makefile 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. #
  2. ## $Id: makefile,v 1.9 1998/01/02 17:46:32 roberto Exp roberto $
  3. ## Makefile
  4. ## See Copyright Notice in lua.h
  5. #
  6. #CONFIGURATION
  7. # define (undefine) POPEN if your system (does not) support piped I/O
  8. #
  9. # define (undefine) _POSIX_SOURCE if your system is (not) POSIX compliant
  10. #
  11. # define (undefine) OLD_ANSI if your system does NOT have some new ANSI
  12. # facilities (e.g. strerror, locale.h, memmove). Although they are ANSI,
  13. # SunOS does not comply; so, add "-DOLD_ANSI" on SunOS
  14. #
  15. # define LUA_COMPAT2_5 if yous system does need to be compatible with
  16. # version 2.5 (or older)
  17. CONFIG = -DPOPEN -D_POSIX_SOURCE
  18. #CONFIG = -DLUA_COMPAT2_5 -DOLD_ANSI -DDEBUG
  19. # Compilation parameters
  20. CC = gcc
  21. CWARNS = -Wall -Wmissing-prototypes -Wshadow -pedantic -Wpointer-arith -Wcast-align -Waggregate-return
  22. CFLAGS = $(CONFIG) $(CWARNS) -ansi -O2
  23. AR = ar
  24. ARFLAGS = rvl
  25. # Aplication modules
  26. LUAOBJS = \
  27. lapi.o \
  28. lauxlib.o \
  29. lbuffer.o \
  30. lbuiltin.o \
  31. ldo.o \
  32. lfunc.o \
  33. lgc.o \
  34. llex.o \
  35. lmem.o \
  36. lobject.o \
  37. lstate.o \
  38. lstx.o \
  39. lstring.o \
  40. ltable.o \
  41. ltm.o \
  42. lvm.o \
  43. lundump.o \
  44. lzio.o
  45. LIBOBJS = \
  46. liolib.o \
  47. lmathlib.o \
  48. lstrlib.o
  49. lua : lua.o liblua.a liblualib.a
  50. $(CC) $(CFLAGS) -o $@ lua.o -L. -llua -llualib -lm
  51. liblua.a : $(LUAOBJS)
  52. $(AR) $(ARFLAGS) $@ $?
  53. ranlib $@
  54. liblualib.a : $(LIBOBJS)
  55. $(AR) $(ARFLAGS) $@ $?
  56. ranlib $@
  57. liblua.so.1.0 : lua.o
  58. ld -o liblua.so.1.0 $(LUAOBJS)
  59. lstx.c lstx.h : lua.stx
  60. bison -o lstx.c -p luaY_ -d lua.stx
  61. # yacc -d lua.stx
  62. # sed -e 's/yy/luaY_/g' -e 's/malloc\.h/stdlib\.h/g' y.tab.c > lstx.c
  63. # sed -e 's/yy/luaY_/g' y.tab.h > lstx.h
  64. clear :
  65. rcsclean
  66. rm -f *.o
  67. rm -f lstx.c lstx.h
  68. co lua.h lualib.h luadebug.h
  69. %.h : RCS/%.h,v
  70. co $@
  71. %.c : RCS/%.c,v
  72. co $@
  73. lapi.o: lapi.c lapi.h lua.h lobject.h lauxlib.h ldo.h lstate.h lfunc.h \
  74. lgc.h lmem.h lstring.h ltable.h ltm.h luadebug.h lvm.h
  75. lauxlib.o: lauxlib.c lauxlib.h lua.h luadebug.h
  76. lbuffer.o: lbuffer.c lauxlib.h lua.h lmem.h lstate.h lobject.h
  77. lbuiltin.o: lbuiltin.c lapi.h lua.h lobject.h lauxlib.h lbuiltin.h \
  78. ldo.h lstate.h lfunc.h lmem.h lstring.h ltable.h ltm.h
  79. ldo.o: ldo.c ldo.h lobject.h lua.h lstate.h lfunc.h lgc.h lmem.h \
  80. lparser.h lzio.h ltm.h luadebug.h lundump.h lvm.h
  81. lfunc.o: lfunc.c lfunc.h lobject.h lua.h lmem.h lstate.h
  82. lgc.o: lgc.c ldo.h lobject.h lua.h lstate.h lfunc.h lgc.h lmem.h \
  83. lstring.h ltable.h ltm.h
  84. liolib.o: liolib.c lauxlib.h lua.h luadebug.h lualib.h
  85. llex.o: llex.c lauxlib.h lua.h llex.h lobject.h lzio.h lmem.h \
  86. lparser.h lstate.h lstring.h lstx.h luadebug.h
  87. lmathlib.o: lmathlib.c lauxlib.h lua.h lualib.h
  88. lmem.o: lmem.c lmem.h lstate.h lobject.h lua.h
  89. lobject.o: lobject.c lobject.h lua.h
  90. lstate.o: lstate.c lbuiltin.h ldo.h lobject.h lua.h lstate.h lfunc.h \
  91. lgc.h llex.h lzio.h lmem.h lstring.h ltable.h ltm.h
  92. lstring.o: lstring.c lmem.h lobject.h lua.h lstate.h lstring.h
  93. lstrlib.o: lstrlib.c lauxlib.h lua.h lualib.h
  94. lstx.o: lstx.c lauxlib.h lua.h ldo.h lobject.h lstate.h lfunc.h llex.h \
  95. lzio.h lmem.h lopcodes.h lparser.h lstring.h luadebug.h
  96. ltable.o: ltable.c lauxlib.h lua.h lmem.h lobject.h lstate.h ltable.h
  97. ltm.o: ltm.c lauxlib.h lua.h lmem.h lobject.h lstate.h ltm.h lapi.h
  98. lua.o: lua.c lua.h luadebug.h lualib.h
  99. lundump.o: lundump.c lauxlib.h lua.h lfunc.h lobject.h lmem.h \
  100. lstring.h lundump.h lzio.h
  101. lvm.o: lvm.c lauxlib.h lua.h ldo.h lobject.h lstate.h lfunc.h lgc.h \
  102. lmem.h lopcodes.h lstring.h ltable.h ltm.h luadebug.h lvm.h
  103. lzio.o: lzio.c lzio.h