121d3294cSantirez# makefile for building Lua 221d3294cSantirez# see ../INSTALL for installation instructions 321d3294cSantirez# see ../Makefile and luaconf.h for further customization 421d3294cSantirez 521d3294cSantirez# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= 621d3294cSantirez 721d3294cSantirez# Your platform. See PLATS for possible values. 821d3294cSantirezPLAT= none 921d3294cSantirez 10a6619562SJohan BergströmCC?= gcc 11b28d0461SantirezCFLAGS= -O2 -Wall $(MYCFLAGS) 1221d3294cSantirezAR= ar rcu 1321d3294cSantirezRANLIB= ranlib 1421d3294cSantirezRM= rm -f 1521d3294cSantirezLIBS= -lm $(MYLIBS) 1621d3294cSantirez 1721d3294cSantirezMYCFLAGS= 1821d3294cSantirezMYLDFLAGS= 1921d3294cSantirezMYLIBS= 2021d3294cSantirez 2121d3294cSantirez# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= 2221d3294cSantirez 2321d3294cSantirezPLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris 2421d3294cSantirez 2521d3294cSantirezLUA_A= liblua.a 2621d3294cSantirezCORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ 2721d3294cSantirez lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ 28*4fdcd213SMatt Stancliff lundump.o lvm.o lzio.o strbuf.o fpconv.o 2921d3294cSantirezLIB_O= lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o \ 3063505e0bSantirez lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o \ 3121d3294cSantirez lua_bit.o 3221d3294cSantirez 3321d3294cSantirezLUA_T= lua 3421d3294cSantirezLUA_O= lua.o 3521d3294cSantirez 3621d3294cSantirezLUAC_T= luac 3721d3294cSantirezLUAC_O= luac.o print.o 3821d3294cSantirez 3921d3294cSantirezALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) 4021d3294cSantirezALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) 4121d3294cSantirezALL_A= $(LUA_A) 4221d3294cSantirez 4321d3294cSantirezdefault: $(PLAT) 4421d3294cSantirez 4521d3294cSantirezall: $(ALL_T) 4621d3294cSantirez 4721d3294cSantirezo: $(ALL_O) 4821d3294cSantirez 4921d3294cSantireza: $(ALL_A) 5021d3294cSantirez 51214adc50Santirez$(LUA_A): $(CORE_O) $(LIB_O) 5221d3294cSantirez $(AR) $@ $(CORE_O) $(LIB_O) # DLL needs all object files 5321d3294cSantirez $(RANLIB) $@ 5421d3294cSantirez 55b28d0461Santirez$(LUA_T): $(LUA_O) $(LUA_A) 5621d3294cSantirez $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) 5721d3294cSantirez 58b28d0461Santirez$(LUAC_T): $(LUAC_O) $(LUA_A) 5921d3294cSantirez $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) 6021d3294cSantirez 6121d3294cSantirezclean: 6221d3294cSantirez $(RM) $(ALL_T) $(ALL_O) 6321d3294cSantirez 6421d3294cSantirezdepend: 6521d3294cSantirez @$(CC) $(CFLAGS) -MM l*.c print.c 6621d3294cSantirez 6721d3294cSantirezecho: 6821d3294cSantirez @echo "PLAT = $(PLAT)" 6921d3294cSantirez @echo "CC = $(CC)" 7021d3294cSantirez @echo "CFLAGS = $(CFLAGS)" 7121d3294cSantirez @echo "AR = $(AR)" 7221d3294cSantirez @echo "RANLIB = $(RANLIB)" 7321d3294cSantirez @echo "RM = $(RM)" 7421d3294cSantirez @echo "MYCFLAGS = $(MYCFLAGS)" 7521d3294cSantirez @echo "MYLDFLAGS = $(MYLDFLAGS)" 7621d3294cSantirez @echo "MYLIBS = $(MYLIBS)" 7721d3294cSantirez 7821d3294cSantirez# convenience targets for popular platforms 7921d3294cSantirez 8021d3294cSantireznone: 8121d3294cSantirez @echo "Please choose a platform:" 8221d3294cSantirez @echo " $(PLATS)" 8321d3294cSantirez 8421d3294cSantirezaix: 8521d3294cSantirez $(MAKE) all CC="xlc" CFLAGS="-O2 -DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" MYLDFLAGS="-brtl -bexpall" 8621d3294cSantirez 87b28d0461Santirezansi: 8821d3294cSantirez $(MAKE) all MYCFLAGS=-DLUA_ANSI 8921d3294cSantirez 9021d3294cSantirezbsd: 9121d3294cSantirez $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-Wl,-E" 9221d3294cSantirez 9321d3294cSantirezfreebsd: 9421d3294cSantirez $(MAKE) all MYCFLAGS="-DLUA_USE_LINUX" MYLIBS="-Wl,-E -lreadline" 9521d3294cSantirez 9621d3294cSantirezgeneric: 9721d3294cSantirez $(MAKE) all MYCFLAGS= 9821d3294cSantirez 9921d3294cSantirezlinux: 10021d3294cSantirez $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses" 10121d3294cSantirez 10221d3294cSantirezmacosx: 10321d3294cSantirez $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-lreadline" 10421d3294cSantirez# use this on Mac OS X 10.3- 10521d3294cSantirez# $(MAKE) all MYCFLAGS=-DLUA_USE_MACOSX 10621d3294cSantirez 10721d3294cSantirezmingw: 10821d3294cSantirez $(MAKE) "LUA_A=lua51.dll" "LUA_T=lua.exe" \ 10921d3294cSantirez "AR=$(CC) -shared -o" "RANLIB=strip --strip-unneeded" \ 11021d3294cSantirez "MYCFLAGS=-DLUA_BUILD_AS_DLL" "MYLIBS=" "MYLDFLAGS=-s" lua.exe 11121d3294cSantirez $(MAKE) "LUAC_T=luac.exe" luac.exe 11221d3294cSantirez 11321d3294cSantirezposix: 11421d3294cSantirez $(MAKE) all MYCFLAGS=-DLUA_USE_POSIX 11521d3294cSantirez 11621d3294cSantirezsolaris: 11721d3294cSantirez $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" 11821d3294cSantirez 11921d3294cSantirez# list targets that do not create files (but not all makes understand .PHONY) 12021d3294cSantirez.PHONY: all $(PLATS) default o a clean depend echo none 12121d3294cSantirez 12221d3294cSantirez# DO NOT DELETE 12321d3294cSantirez 12421d3294cSantirezlapi.o: lapi.c lua.h luaconf.h lapi.h lobject.h llimits.h ldebug.h \ 12521d3294cSantirez lstate.h ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h \ 12621d3294cSantirez lundump.h lvm.h 12721d3294cSantirezlauxlib.o: lauxlib.c lua.h luaconf.h lauxlib.h 12821d3294cSantirezlbaselib.o: lbaselib.c lua.h luaconf.h lauxlib.h lualib.h 12921d3294cSantirezlcode.o: lcode.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ 13021d3294cSantirez lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h lgc.h \ 13121d3294cSantirez ltable.h 13221d3294cSantirezldblib.o: ldblib.c lua.h luaconf.h lauxlib.h lualib.h 13321d3294cSantirezldebug.o: ldebug.c lua.h luaconf.h lapi.h lobject.h llimits.h lcode.h \ 13421d3294cSantirez llex.h lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ 13521d3294cSantirez lfunc.h lstring.h lgc.h ltable.h lvm.h 13621d3294cSantirezldo.o: ldo.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ 13721d3294cSantirez lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lparser.h lstring.h \ 13821d3294cSantirez ltable.h lundump.h lvm.h 13921d3294cSantirezldump.o: ldump.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h \ 14021d3294cSantirez lzio.h lmem.h lundump.h 14121d3294cSantirezlfunc.o: lfunc.c lua.h luaconf.h lfunc.h lobject.h llimits.h lgc.h lmem.h \ 14221d3294cSantirez lstate.h ltm.h lzio.h 14321d3294cSantirezlgc.o: lgc.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ 14421d3294cSantirez lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h 14521d3294cSantirezlinit.o: linit.c lua.h luaconf.h lualib.h lauxlib.h 14621d3294cSantirezliolib.o: liolib.c lua.h luaconf.h lauxlib.h lualib.h 14721d3294cSantirezllex.o: llex.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h ltm.h \ 14821d3294cSantirez lzio.h lmem.h llex.h lparser.h lstring.h lgc.h ltable.h 14921d3294cSantirezlmathlib.o: lmathlib.c lua.h luaconf.h lauxlib.h lualib.h 15021d3294cSantirezlmem.o: lmem.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ 15121d3294cSantirez ltm.h lzio.h lmem.h ldo.h 15221d3294cSantirezloadlib.o: loadlib.c lua.h luaconf.h lauxlib.h lualib.h 15321d3294cSantirezlobject.o: lobject.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h \ 15421d3294cSantirez ltm.h lzio.h lmem.h lstring.h lgc.h lvm.h 15521d3294cSantirezlopcodes.o: lopcodes.c lopcodes.h llimits.h lua.h luaconf.h 15621d3294cSantirezloslib.o: loslib.c lua.h luaconf.h lauxlib.h lualib.h 15721d3294cSantirezlparser.o: lparser.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ 15821d3294cSantirez lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ 15921d3294cSantirez lfunc.h lstring.h lgc.h ltable.h 16021d3294cSantirezlstate.o: lstate.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ 16121d3294cSantirez ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h llex.h lstring.h ltable.h 16221d3294cSantirezlstring.o: lstring.c lua.h luaconf.h lmem.h llimits.h lobject.h lstate.h \ 16321d3294cSantirez ltm.h lzio.h lstring.h lgc.h 16421d3294cSantirezlstrlib.o: lstrlib.c lua.h luaconf.h lauxlib.h lualib.h 16521d3294cSantirezltable.o: ltable.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ 16621d3294cSantirez ltm.h lzio.h lmem.h ldo.h lgc.h ltable.h 16721d3294cSantirezltablib.o: ltablib.c lua.h luaconf.h lauxlib.h lualib.h 16821d3294cSantirezltm.o: ltm.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h lzio.h \ 16921d3294cSantirez lmem.h lstring.h lgc.h ltable.h 17021d3294cSantirezlua.o: lua.c lua.h luaconf.h lauxlib.h lualib.h 17121d3294cSantirezluac.o: luac.c lua.h luaconf.h lauxlib.h ldo.h lobject.h llimits.h \ 17221d3294cSantirez lstate.h ltm.h lzio.h lmem.h lfunc.h lopcodes.h lstring.h lgc.h \ 17321d3294cSantirez lundump.h 17421d3294cSantirezlundump.o: lundump.c lua.h luaconf.h ldebug.h lstate.h lobject.h \ 17521d3294cSantirez llimits.h ltm.h lzio.h lmem.h ldo.h lfunc.h lstring.h lgc.h lundump.h 17621d3294cSantirezlvm.o: lvm.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ 17721d3294cSantirez lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lstring.h ltable.h lvm.h 17821d3294cSantirezlzio.o: lzio.c lua.h luaconf.h llimits.h lmem.h lstate.h lobject.h ltm.h \ 17921d3294cSantirez lzio.h 18021d3294cSantirezprint.o: print.c ldebug.h lstate.h lua.h luaconf.h lobject.h llimits.h \ 18121d3294cSantirez ltm.h lzio.h lmem.h lopcodes.h lundump.h 18221d3294cSantirez 183# (end of Makefile) 184