X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=Makefile;h=c90f11fc9d0bf4279b334b31df61485beb7f927d;hp=2d732ff0833a4349fcf4a3bab79d5ecc3295c086;hb=2a88e23db5715360aef9448c6a96415f5a5a11f4;hpb=93a98dd13be5127871ff78d85e8199f2df77e9c2 diff --git a/Makefile b/Makefile index 2d732ff08..c90f11fc9 100644 --- a/Makefile +++ b/Makefile @@ -1,47 +1,83 @@ -LUAC = luac -LUAC_OPTIONS = -s +include build/config.mk -FILES = ffluci/config.lua +MODULES = applications/* libs/* modules/* themes/* i18n/* contrib/* -CFILES = ffluci/util.lua ffluci/http.lua \ -ffluci/fs.lua ffluci/i18n.lua ffluci/model/uci.lua \ -ffluci/template.lua ffluci/dispatcher.lua ffluci/menu.lua ffluci/init.lua +OS:=$(shell uname) +export OS -DIRECTORIES = dist/ffluci/model dist/ffluci/controller/public dist/ffluci/controller/admin dist/ffluci/i18n dist/ffluci/view +.PHONY: all build gccbuild luabuild clean host gcchost luahost hostcopy hostclean -INFILES = $(CFILES:%=src/%) -OUTFILE = ffluci/init.lua +all: build -.PHONY: all dist-compile dist-source examples-compile examples-source dist examples compile source clean +build: gccbuild luabuild -all: compile +gccbuild: + for i in $(MODULES); do make -C$$i compile; done -dist-compile: compile dist -dist-source: source dist +luabuild: + for i in $(MODULES); do make -C$$i luabuild; done -examples-compile: compile examples -examples-source: source examples +clean: + rm -rf docs + for i in $(MODULES); do make -C$$i clean; done -dist: - cp src/ffluci/controller/public/* dist/ffluci/controller/public/ - cp src/ffluci/controller/admin/* dist/ffluci/controller/admin/ - cp src/ffluci/i18n/* dist/ffluci/i18n/ - cp src/ffluci/view/* dist/ffluci/view/ -R - -examples: - cp examples/* dist/ -R +host: build hostcopy -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 +gcchost: gccbuild hostcopy -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 +luahost: luabuild hostcopy + +hostcopy: + mkdir -p host + for i in $(MODULES); do cp -a $$i/dist/* host/ -R 2>/dev/null || true; done + for i in $(MODULES); do cp -a $$i/hostfiles/* host/ -R 2>/dev/null || true; done + rm -f host/luci + ln -s .$(LUCI_MODULEDIR) host/luci + +hostenv: host ucidefaults + +ucidefaults: + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "$(realpath host)/bin/uci-defaults --exclude luci-community-*" + +runboa: hostenv + libs/sgi-webuci/host/buildconfig.sh $(realpath host) > host/etc/boa/boa.conf + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "$(realpath host/usr/bin/boa) -c $(realpath host/etc/boa) -d" + +runhttpd: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "$(realpath libs/httpd/host/runluci) $(realpath host) $(HTDOCS)" + +runluci: luahost + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "$(realpath libs/httpd/host/runluci) $(realpath host) $(HTDOCS)" + +runlua: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) lua + +runshell: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) $$SHELL + +hostclean: clean + rm -rf host + +apidocs: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "build/makedocs.sh host/luci/ docs" + +uvldocs: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) \ + "build/uvldoc $(realpath host) $(UVL_SCHEMEDIR) uvldocs $(DOCS)" + +run: + # make run is deprecated # + # Please use: # + # # + # To run LuCI WebUI using LuCI HTTPD # + # make runhttpd # + # # + # To run LuCI WebUI using Boa/Webuci # + # make runboa # + # # + # To start a shell in the LuCI environment # + # make runshell # + # # + # To run Lua CLI in the LuCI environment # + # make runlua #