| 1 | # Makefile for Lua 5.1.4 using MinGW. |
|---|
| 2 | |
|---|
| 3 | # Copyright (C) 2009 V. Torri. |
|---|
| 4 | |
|---|
| 5 | # To compile, type: |
|---|
| 6 | # |
|---|
| 7 | # make |
|---|
| 8 | # |
|---|
| 9 | # To install, type: |
|---|
| 10 | # |
|---|
| 11 | # make install |
|---|
| 12 | |
|---|
| 13 | #### Variables to change if needed |
|---|
| 14 | #### |
|---|
| 15 | #### Example for Debian / Ubuntu: |
|---|
| 16 | #### |
|---|
| 17 | #### TARGET = i586-mingw32msvc- |
|---|
| 18 | #### prefix = $MINGW_PREFIX |
|---|
| 19 | |
|---|
| 20 | TARGET = |
|---|
| 21 | |
|---|
| 22 | prefix = /usr/local |
|---|
| 23 | |
|---|
| 24 | #### No need to change anything below |
|---|
| 25 | |
|---|
| 26 | BIN_PATH = $(prefix)/bin |
|---|
| 27 | INCLUDE_PATH = $(prefix)/include |
|---|
| 28 | LIBRARY_PATH = $(prefix)/lib |
|---|
| 29 | PKGCONFIG_PATH = $(prefix)/lib/pkgconfig |
|---|
| 30 | |
|---|
| 31 | STATICLIB = liblua.a |
|---|
| 32 | SHAREDLIB = lua51.dll |
|---|
| 33 | IMPLIB = liblua.dll.a |
|---|
| 34 | |
|---|
| 35 | CC = $(TARGET)gcc |
|---|
| 36 | CPPFLAGS = -DLUA_BUILD_AS_DLL |
|---|
| 37 | CFLAGS = -O2 -Wall |
|---|
| 38 | |
|---|
| 39 | AR = $(TARGET)ar |
|---|
| 40 | ARFLAGS = rcs |
|---|
| 41 | |
|---|
| 42 | INSTALL = install -p |
|---|
| 43 | RM = rm -f |
|---|
| 44 | MKDIR = mkdir -p |
|---|
| 45 | |
|---|
| 46 | # lua objects for the library. |
|---|
| 47 | |
|---|
| 48 | CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ |
|---|
| 49 | lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ |
|---|
| 50 | lundump.o lvm.o lzio.o |
|---|
| 51 | LIB_O= lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o \ |
|---|
| 52 | lstrlib.o loadlib.o linit.o |
|---|
| 53 | |
|---|
| 54 | |
|---|
| 55 | all: clean $(STATICLIB) $(SHAREDLIB) $(IMPLIB) |
|---|
| 56 | |
|---|
| 57 | .c.o: |
|---|
| 58 | $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $< |
|---|
| 59 | |
|---|
| 60 | |
|---|
| 61 | $(STATICLIB): $(CORE_O) $(LIB_O) |
|---|
| 62 | $(AR) $(ARFLAGS) $@ $(CORE_O) $(LIB_O) |
|---|
| 63 | |
|---|
| 64 | $(IMPLIB): $(SHAREDLIB) |
|---|
| 65 | |
|---|
| 66 | $(SHAREDLIB): $(CORE_O) $(LIB_O) |
|---|
| 67 | $(CC) -shared -o $@ \ |
|---|
| 68 | -Wl,-s \ |
|---|
| 69 | -Wl,--out-implib=$(IMPLIB) \ |
|---|
| 70 | -Wl,--export-all-symbols \ |
|---|
| 71 | -Wl,--enable-auto-import \ |
|---|
| 72 | $(CORE_O) $(LIB_O) |
|---|
| 73 | |
|---|
| 74 | .PHONY: install uninstall clean |
|---|
| 75 | |
|---|
| 76 | install: $(STATICLIB) $(IMPLIB) $(SHAREDLIB) |
|---|
| 77 | -@$(MKDIR) $(INCLUDE_PATH) $(PKGCONFIG_PATH) |
|---|
| 78 | -$(INSTALL) lua.h $(INCLUDE_PATH) |
|---|
| 79 | -$(INSTALL) luaconf.h $(INCLUDE_PATH) |
|---|
| 80 | -$(INSTALL) lualib.h $(INCLUDE_PATH) |
|---|
| 81 | -$(INSTALL) lauxlib.h $(INCLUDE_PATH) |
|---|
| 82 | -$(INSTALL) ../etc/lua.hpp $(INCLUDE_PATH) |
|---|
| 83 | -$(INSTALL) ../etc/lua.pc $(PKGCONFIG_PATH) |
|---|
| 84 | -$(INSTALL) $(STATICLIB) $(LIBRARY_PATH) |
|---|
| 85 | -$(INSTALL) $(IMPLIB) $(LIBRARY_PATH) |
|---|
| 86 | -$(INSTALL) $(SHAREDLIB) $(BIN_PATH) |
|---|
| 87 | |
|---|
| 88 | uninstall: |
|---|
| 89 | -$(RM) $(INCLUDE_PATH)/lua.h |
|---|
| 90 | -$(RM) $(INCLUDE_PATH)/luaconf.h |
|---|
| 91 | -$(RM) $(INCLUDE_PATH)/lualib.h |
|---|
| 92 | -$(RM) $(INCLUDE_PATH)/lauxlib.h |
|---|
| 93 | -$(RM) $(INCLUDE_PATH)/lua.hpp |
|---|
| 94 | -$(RM) $(PKGCONFIG_PATH)/lua.pc |
|---|
| 95 | -$(RM) $(LIBRARY_PATH)/$(STATICLIB) |
|---|
| 96 | -$(RM) $(LIBRARY_PATH)/$(IMPLIB) |
|---|
| 97 | -$(RM) $(BIN_PATH)/$(SHAREDLIB) |
|---|
| 98 | |
|---|
| 99 | clean: |
|---|
| 100 | -$(RM) $(STATICLIB) |
|---|
| 101 | -$(RM) $(SHAREDLIB) |
|---|
| 102 | -$(RM) $(IMPLIB) |
|---|
| 103 | -$(RM) *.o |
|---|
| 104 | |
|---|
| 105 | |
|---|
| 106 | # DO NOT DELETE |
|---|
| 107 | |
|---|
| 108 | lapi.o: lapi.c lua.h luaconf.h lapi.h lobject.h llimits.h ldebug.h \ |
|---|
| 109 | lstate.h ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h \ |
|---|
| 110 | lundump.h lvm.h |
|---|
| 111 | lauxlib.o: lauxlib.c lua.h luaconf.h lauxlib.h |
|---|
| 112 | lbaselib.o: lbaselib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 113 | lcode.o: lcode.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ |
|---|
| 114 | lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h lgc.h \ |
|---|
| 115 | ltable.h |
|---|
| 116 | ldblib.o: ldblib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 117 | ldebug.o: ldebug.c lua.h luaconf.h lapi.h lobject.h llimits.h lcode.h \ |
|---|
| 118 | llex.h lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ |
|---|
| 119 | lfunc.h lstring.h lgc.h ltable.h lvm.h |
|---|
| 120 | ldo.o: ldo.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ |
|---|
| 121 | lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lparser.h lstring.h \ |
|---|
| 122 | ltable.h lundump.h lvm.h |
|---|
| 123 | ldump.o: ldump.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h \ |
|---|
| 124 | lzio.h lmem.h lundump.h |
|---|
| 125 | lfunc.o: lfunc.c lua.h luaconf.h lfunc.h lobject.h llimits.h lgc.h lmem.h \ |
|---|
| 126 | lstate.h ltm.h lzio.h |
|---|
| 127 | lgc.o: lgc.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ |
|---|
| 128 | lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h |
|---|
| 129 | linit.o: linit.c lua.h luaconf.h lualib.h lauxlib.h |
|---|
| 130 | liolib.o: liolib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 131 | llex.o: llex.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h ltm.h \ |
|---|
| 132 | lzio.h lmem.h llex.h lparser.h lstring.h lgc.h ltable.h |
|---|
| 133 | lmathlib.o: lmathlib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 134 | lmem.o: lmem.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ |
|---|
| 135 | ltm.h lzio.h lmem.h ldo.h |
|---|
| 136 | loadlib.o: loadlib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 137 | lobject.o: lobject.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h \ |
|---|
| 138 | ltm.h lzio.h lmem.h lstring.h lgc.h lvm.h |
|---|
| 139 | lopcodes.o: lopcodes.c lopcodes.h llimits.h lua.h luaconf.h |
|---|
| 140 | loslib.o: loslib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 141 | lparser.o: lparser.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ |
|---|
| 142 | lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ |
|---|
| 143 | lfunc.h lstring.h lgc.h ltable.h |
|---|
| 144 | lstate.o: lstate.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ |
|---|
| 145 | ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h llex.h lstring.h ltable.h |
|---|
| 146 | lstring.o: lstring.c lua.h luaconf.h lmem.h llimits.h lobject.h lstate.h \ |
|---|
| 147 | ltm.h lzio.h lstring.h lgc.h |
|---|
| 148 | lstrlib.o: lstrlib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 149 | ltable.o: ltable.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ |
|---|
| 150 | ltm.h lzio.h lmem.h ldo.h lgc.h ltable.h |
|---|
| 151 | ltablib.o: ltablib.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 152 | ltm.o: ltm.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h lzio.h \ |
|---|
| 153 | lmem.h lstring.h lgc.h ltable.h |
|---|
| 154 | lua.o: lua.c lua.h luaconf.h lauxlib.h lualib.h |
|---|
| 155 | luac.o: luac.c lua.h luaconf.h lauxlib.h ldo.h lobject.h llimits.h \ |
|---|
| 156 | lstate.h ltm.h lzio.h lmem.h lfunc.h lopcodes.h lstring.h lgc.h \ |
|---|
| 157 | lundump.h |
|---|
| 158 | lundump.o: lundump.c lua.h luaconf.h ldebug.h lstate.h lobject.h \ |
|---|
| 159 | llimits.h ltm.h lzio.h lmem.h ldo.h lfunc.h lstring.h lgc.h lundump.h |
|---|
| 160 | lvm.o: lvm.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ |
|---|
| 161 | lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lstring.h ltable.h lvm.h |
|---|
| 162 | lzio.o: lzio.c lua.h luaconf.h llimits.h lmem.h lstate.h lobject.h ltm.h \ |
|---|
| 163 | lzio.h |
|---|
| 164 | print.o: print.c ldebug.h lstate.h lua.h luaconf.h lobject.h llimits.h \ |
|---|
| 165 | ltm.h lzio.h lmem.h lopcodes.h lundump.h |
|---|
| 166 | |
|---|
| 167 | # (end of Makefile) |
|---|