X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=Makefile;h=0e09682ae22bc57e6e3e815d039afcb310ff6c8b;hp=79adba00fd5065754ae4281c3f1c1c2b6ffe6f3d;hb=f154da7e8c21edd2bc55374e3cece0cf3dedfefe;hpb=9203ede3c71f56391465fe2cc757762936e8835e diff --git a/Makefile b/Makefile index 79adba00f..0e09682ae 100644 --- a/Makefile +++ b/Makefile @@ -1,41 +1,46 @@ -LUAC = luac -LUAC_OPTIONS = -s +include build/config.mk -FILES = +MODULES = applications/* libs/* modules/* themes/* i18n/* +LUA_TARGET = source -CFILES = ffluci/util.lua ffluci/http.lua ffluci/fs.lua \ -ffluci/sys.lua ffluci/model/uci.lua ffluci/model/ipkg.lua \ -ffluci/config.lua ffluci/i18n.lua ffluci/template.lua \ -ffluci/cbi.lua ffluci/dispatcher.lua ffluci/menu.lua ffluci/init.lua +### luaposix merge (temporary) ### +OS:=$(shell uname) +export OS +ifeq ($(OS),Darwin) + MODULES += contrib/luaposix +endif -DIRECTORIES = dist/ffluci/model/cbi dist/ffluci/controller dist/ffluci/i18n dist/ffluci/view -INFILES = $(CFILES:%=src/%) -OUTFILE = ffluci/init.lua +.PHONY: all build gccbuild luabuild clean host gcchost luahost hostcopy hostclean -.PHONY: all dist-compile dist-source examples-compile examples-source dist examples compile source clean +all: build -all: compile +build: luabuild gccbuild -dist-compile: compile dist -dist-source: source dist +gccbuild: + for i in $(MODULES); do make -C$$i compile; done -dist: - cp src/ffluci/controller/* dist/ffluci/controller/ -R - cp src/ffluci/i18n/* dist/ffluci/i18n/ - cp src/ffluci/view/* dist/ffluci/view/ -R - cp src/ffluci/model/cbi/* dist/ffluci/model/cbi/ -R +luabuild: + for i in $(MODULES); do make -C$$i lua$(LUA_TARGET); done -compile: - mkdir -p $(DIRECTORIES) - $(LUAC) $(LUAC_OPTIONS) -o dist/$(OUTFILE) $(INFILES) - for i in $(CFILES); do [ -f dist/$$i ] || ln -s `dirname $$i | cut -s -d / -f 2- | sed -e 's/[^/]*\/*/..\//g'``basename $(OUTFILE)` dist/$$i; done - for i in $(FILES); do cp src/$$i dist/$$i; done - -source: - mkdir -p $(DIRECTORIES) - for i in $(CFILES); do cp src/$$i dist/$$i; done - for i in $(FILES); do cp src/$$i dist/$$i; done - clean: - rm dist -rf + for i in $(MODULES); do make -C$$i clean; done + + +host: build hostcopy + +gcchost: gccbuild hostcopy + +luahost: luabuild hostcopy + +hostcopy: + mkdir -p host + for i in $(MODULES); do cp $$i/dist/* host/ -R 2>/dev/null || true; done + rm -f host/luci + ln -s .$(LUCI_INSTALLDIR) host/luci + +run: host + ./host/usr/bin/boa -c ./host/etc/boa -d + +hostclean: clean + rm -rf host