X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=Makefile;h=ceb80ac249dcd172ff50699fef2888386344ed59;hp=38e2d155222f67ec039af64b963c58cae059011d;hb=60f7c2f5160e9fc4ff675f1383c7a77d457b11cd;hpb=b8430dcff704319f01279f1c399af4faf9cb9cb2 diff --git a/Makefile b/Makefile index 38e2d1552..ceb80ac24 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,6 @@ include build/config.mk -MODULES = applications/* libs/* modules/* themes/* i18n/* contrib/luaposix -LUA_TARGET = source +MODULES = contrib/* applications/* libs/* modules/* themes/* i18n/* OS:=$(shell uname) export OS @@ -10,15 +9,29 @@ export OS all: build -build: luabuild gccbuild +build: gccbuild luabuild gccbuild: - for i in $(MODULES); do make -C$$i compile; done + make -C libs/lmo CC="cc" CFLAGS="" LDFLAGS="" SDK="$(shell test -f .running-sdk && echo 1)" host-install + for i in $(MODULES); do \ + make -C$$i SDK="$(shell test -f .running-sdk && echo 1)" compile || { \ + echo "*** Compilation of $$i failed!"; \ + exit 1; \ + }; \ + done -luabuild: - for i in $(MODULES); do make -C$$i lua$(LUA_TARGET); done +luabuild: i18nbuild + for i in $(MODULES); do HOST=$(realpath host) \ + SDK="$(shell test -f .running-sdk && echo 1)" make -C$$i luabuild; done + +i18nbuild: + mkdir -p host/lua-po + ./build/i18n-po2lua.pl ./po host/lua-po clean: + rm -f .running-sdk + rm -rf docs + make -C libs/lmo host-clean for i in $(MODULES); do make -C$$i clean; done @@ -29,13 +42,63 @@ gcchost: gccbuild hostcopy luahost: luabuild hostcopy hostcopy: - mkdir -p host - for i in $(MODULES); do cp -a $$i/dist/* host/ -R 2>/dev/null || true; done + mkdir -p host/tmp + mkdir -p host/var/state + for i in $(MODULES); do cp -pR $$i/dist/* host/ 2>/dev/null || true; done + for i in $(MODULES); do cp -pR $$i/hostfiles/* host/ 2>/dev/null || true; done rm -f host/luci - ln -s .$(LUCI_INSTALLDIR) host/luci + ln -s .$(LUCI_MODULEDIR) host/luci + rm -rf /tmp/luci-* || true + +hostenv: sdk host ucidefaults + +sdk: + touch .running-sdk + +ucidefaults: + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "$(realpath host)/bin/uci-defaults --exclude luci-freifunk-*" + +runhttpd: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "lua build/lucid.lua" + +runuhttpd: hostenv + cp $(realpath build)/luci.cgi $(realpath host)/www/cgi-bin/luci + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "$(realpath host)/usr/sbin/uhttpd -p 8080 -h $(realpath host)/www -f" -run: host - ./host/usr/bin/boa -c ./host/etc/boa -d +runlua: hostenv + build/hostenv.sh $(realpath host) $(LUA_MODULEDIR) $(LUA_LIBRARYDIR) "lua -i build/setup.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)" + +po: host + for L in $${LANGUAGE:-$$(find i18n/ -path 'i18n/*/luasrc/i18n/*' -name 'default.*.lua' | \ + sed -e 's!.*/default\.\(.*\)\.lua!\1!')}; do \ + build/i18n-lua2po.pl . $(realpath host)/po $$L; \ + done + +run: + # make run is deprecated # + # Please use: # + # # + # To run LuCI WebUI using LuCIttpd # + # 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 #