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
syntax highlighted by Code2HTML, v. 0.9.1