include $(CONFIG) ifneq "$(OS)" "Windows" ifneq "$(OS)" "Cygwin" CFLAGS += -DUSE_DLOPEN=1 endif endif ifneq "$(OS)" "Darwin" ifneq "$(OS)" "Darwin-static" ifneq "$(OS)" "OpenBSD" ifneq "$(OS)" "FreeBSD" ifneq "$(OS)" "Solaris" CPFLAGS+= -a LDFLAGS+= -Wl,-E HLDFLAGS+= -Wl,-E endif endif endif endif endif CFLAGS += -I../../include -I../include -I. -I.. -DUSE_POPEN=1 ifeq "$(OS)" "OpenBSD" LDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm else ifeq "$(OS)" "Cygwin" LDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm else ifeq "$(OS)" "BeOS" LDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -ldl else LDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm -ldl endif endif endif HCFLAGS += -I../../include -I../include -I. -I.. -DUSE_POPEN=1 ifeq "$(OS)" "FreeBSD" HLDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm else ifeq "$(OS)" "OpenBSD" HLDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm else ifeq "$(OS)" "Cygwin" HLDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm else ifeq "$(OS)" "BeOS" HLDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -ldl else ifeq "$(OS)" "Solaris" HLDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lsocket -lnsl -lm else HLDFLAGS+= -L../lib/ -L../../lib/ -llua-host -llualib-host -lm -ldl endif endif endif endif endif H=@ all: bin/lua $(H)echo -n bin/lua: $(H)echo -n ' building core library... ' $(H)cd src ; \ $(CC) $(CFLAGS) -c *.c ; \ $(AR) rc ../lib/liblua.a *.o ; \ $(RANLIB) ../lib/liblua.a ; \ rm -f *.o $(H)echo "done." $(H)echo -n ' building standard library... ' $(H)cd src/lib; \ $(CC) $(CFLAGS) -c *.c ; \ $(AR) rc ../../lib/liblualib.a *.o ; \ $(RANLIB) ../../lib/liblualib.a ; \ rm -f *.o $(H)echo "done." $(H)if test "$(HCC)" = "$(CC)" ; then \ cd lib/ ; \ ln -s liblua.a liblua-host.a ; \ ln -s liblualib.a liblualib-host.a ; \ else \ echo -n ' building core host library... '; \ cd src ; \ $(HCC) $(HCFLAGS) -c *.c ; \ $(HAR) rc ../lib/liblua-host.a *.o ; \ $(HRANLIB) ../lib/liblua-host.a ; \ rm -f *.o; \ echo "done."; \ echo -n ' building standard host library... '; \ cd ../src/lib; \ $(HCC) $(HCFLAGS) -c *.c ; \ $(HAR) rc ../../lib/liblualib-host.a *.o ; \ $(HRANLIB) ../../lib/liblualib-host.a ; \ rm -f *.o ; \ echo "done."; \ fi $(H)echo -n ' building lua... ' $(H)cd src/lua; \ $(HCC) $(HCFLAGS) -o ../../bin/lua *.c $(HLDFLAGS) $(H)echo "done." $(H)echo -n ' building luac... ' $(H)cd src/luac ; \ $(HCC) $(HCFLAGS) -o ../../bin/luac *.c \ -DLUA_OPNAMES ../lopcodes.c $(HLDFLAGS) $(H)echo "done." $(H)echo -n ' building bin2c... ' $(H)cd etc ; \ $(HCC) $(HCFLAGS) -o ../bin/bin2c bin2c.c \ $(HLDFLAGS) $(H)echo "done." $(H)cp include/*.h $(PREFIX)/include $(H)cp bin/* $(PREFIX)/bin $(H)cp $(CPFLAGS) lib/*.a $(PREFIX)/lib