Makefile 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. # Copyright (c) 2002-2004 MontaVista Software, Inc.
  2. #
  3. # All rights reserved.
  4. #
  5. # This software licensed under BSD license, the text of which follows:
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions are met:
  9. #
  10. # - Redistributions of source code must retain the above copyright notice,
  11. # this list of conditions and the following disclaimer.
  12. # - Redistributions in binary form must reproduce the above copyright notice,
  13. # this list of conditions and the following disclaimer in the documentation
  14. # and/or other materials provided with the distribution.
  15. # - Neither the name of the MontaVista Software, Inc. nor the names of its
  16. # contributors may be used to endorse or promote products derived from this
  17. # software without specific prior written permission.
  18. #
  19. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  20. # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  21. # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  22. # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  23. # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  24. # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  25. # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  26. # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  27. # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  28. # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  29. # THE POSSIBILITY OF SUCH DAMAGE.
  30. # Production mode flags
  31. CFLAGS = -O3 -Wall -fomit-frame-pointer
  32. LDFLAGS =
  33. # Debug mode flags
  34. #CFLAGS = -g -Wall
  35. #-DDEBUG
  36. #LDFLAGS = -g
  37. # Profile mode flags
  38. #CFLAGS = -O3 -pg
  39. #LDFLAGS = -pg
  40. # Code Coverage with lcov flgs
  41. #CFLAGS = -ftest-coverage -fprofile-arcs
  42. #LDFLAGS = -g
  43. GMI_SRC = aispoll.c gmi.c tlist.c hdb.c crypto.c
  44. GMI_OBJS = aispoll.o gmi.o tlist.o hdb.o crypto.o
  45. EXEC_SRC = main.c clm.c amf.c ckpt.c evt.c evs.c parse.c print.c mempool.c
  46. EXEC_OBJS = main.o clm.o amf.o ckpt.o evt.o evs.o parse.o print.o mempool.o libgmi.a
  47. all:libgmi.a libgmi.so.1.0 aisexec keygen
  48. aisexec: $(EXEC_OBJS)
  49. $(CC) $(LDFLAGS) $(EXEC_OBJS) $(LIBS) -o aisexec
  50. libgmi.a: $(GMI_OBJS)
  51. $(AR) -rc libgmi.a $(GMI_OBJS)
  52. libgmi.so.1.0: $(GMI_OBJS)
  53. $(CC) -shared -Wl,-soname,libgmi.so.1 $(GMI_OBJS) -o $@
  54. rm -f libgmi.so.1 libgmi.so
  55. ln -s libgmi.so.1.0 libgmi.so.1
  56. ln -s libgmi.so.1.0 libgmi.so
  57. keygen: keygen.o
  58. $(CC) $(LDFLAGS) keygen.o -o keygen
  59. clean:
  60. rm -f *.o aisexec libgmi.so.1.0 libgmi.so.1 libgmi.so libgmi.a gmon.out keygen *.da *.bb *.bbg
  61. depend:
  62. makedepend -Y -- $(CFLAGS) $(EXEC_SRC) $(GMI_SRC) > /dev/null 2>&1
  63. %.o: %.c
  64. $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
  65. # DO NOT DELETE
  66. main.o: ../include/ais_types.h ../include/ais_msg.h ../include/ais_types.h
  67. main.o: ../include/list.h ../include/queue.h gmi.h aispoll.h mempool.h
  68. main.o: parse.h main.h clm.h amf.h handlers.h ckpt.h evt.h hdb.h print.h
  69. clm.o: ../include/ais_types.h ../include/ais_msg.h ../include/ais_types.h
  70. clm.o: ../include/list.h ../include/queue.h aispoll.h gmi.h parse.h main.h
  71. clm.o: clm.h amf.h handlers.h ckpt.h evt.h hdb.h print.h mempool.h
  72. amf.o: ../include/ais_types.h ../include/ais_msg.h ../include/ais_types.h
  73. amf.o: ../include/list.h ../include/queue.h gmi.h aispoll.h mempool.h parse.h
  74. amf.o: main.h clm.h amf.h handlers.h ckpt.h evt.h hdb.h print.h
  75. ckpt.o: ../include/ais_types.h ../include/ais_msg.h ../include/ais_types.h
  76. ckpt.o: ../include/list.h ../include/queue.h aispoll.h mempool.h parse.h
  77. ckpt.o: main.h clm.h amf.h handlers.h ckpt.h evt.h hdb.h print.h gmi.h
  78. evt.o: ../include/ais_types.h ../include/ais_msg.h ../include/ais_types.h
  79. evt.o: ../include/list.h ../include/queue.h aispoll.h mempool.h parse.h
  80. evt.o: main.h clm.h amf.h handlers.h ckpt.h evt.h hdb.h print.h gmi.h
  81. parse.o: ../include/ais_types.h ../include/list.h parse.h aispoll.h mempool.h
  82. print.o: print.h ../include/ais_types.h parse.h ../include/list.h aispoll.h
  83. mempool.o: ../include/list.h mempool.h
  84. crypto.o: crypto.h