X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=build%2Fmodule.mk;h=66b767c7a12b111bad13cffae8c4b7538ad55f55;hp=8932f5761f0a93d9b3ed1c61740f7d0de03d2b7e;hb=1c383dc244323f5c168ee16824cb5788fefc3667;hpb=5df565faba5eb0c26a7ce0e2d6e9092bf71cb1e8 diff --git a/build/module.mk b/build/module.mk index 8932f5761..66b767c7a 100644 --- a/build/module.mk +++ b/build/module.mk @@ -1,19 +1,45 @@ -.PHONY: all compile compile-module source source-module clean clean-module - -all: compile -compile: compile-module -clean: clean-module -source: source-module - -source-module: - mkdir -p dist$(LUCI_INSTALLDIR) - cp root/* dist -R 2>/dev/null || true - cp src/* dist$(LUCI_INSTALLDIR) -R 2>/dev/null || true - for i in $$(find dist -name .svn); do rm $$i -rf; done - -compile-module: source-module +MAKEPATH:=$(dir $(lastword $(MAKEFILE_LIST))) +-include $(MAKEPATH)config.mk +-include $(MAKEPATH)gccconfig.mk + +.PHONY: all build compile luacompile luasource clean luaclean + +all: build + +build: luabuild gccbuild + +luabuild: i18n lua$(LUA_TARGET) + +gccbuild: compile +compile: + +clean: luaclean + +i18n: + [ -n "$(XSLTPROC)" ] && for i in luasrc/i18n/*.xml; do [ "$$i" -nt "$${i%%[.]xml}.lua" ]\ + && $(XSLTPROC) $(MAKEPATH)i18n-lua-xhtml1.xsl $$i > $${i%%[.]xml}.lua; done || true + +luasource: + mkdir -p dist$(LUA_MODULEDIR) + mkdir -p dist$(LUCI_MODULEDIR) + mkdir -p dist$(HTDOCS) + cp -pR root/* dist 2>/dev/null || true + cp -pR luasrc/* dist$(LUCI_MODULEDIR) 2>/dev/null || true + cp -pR lua/* dist$(LUA_MODULEDIR) 2>/dev/null || true + cp -pR htdocs/* dist$(HTDOCS) 2>/dev/null || true + for i in $$(find dist -name .svn); do rm -rf $$i || true; done + for i in dist$(LUCI_MODULEDIR)/i18n/*.xml; do [ -f "$$i" ] && rm $$i; done || true + + +luastrip: luasource + for i in $$(find dist -type f -name '*.lua'); do perl -e 'undef $$/; open( F, "< $$ARGV[0]" ) || die $$!; $$src = ; close F; $$src =~ s/--\[\[.*?\]\](--)?//gs; $$src =~ s/^\s*--.*?\n//gm; open( F, "> $$ARGV[0]" ) || die $$!; print F $$src; close F' $$i; done + +luacompile: luasource for i in $$(find dist -name *.lua -not -name debug.lua); do $(LUAC) $(LUAC_OPTIONS) -o $$i $$i; done -clean-module: +luagzip: luacompile + for i in $$(find dist -name *.lua -not -name debug.lua); do gzip -f9 $$i; done + +luaclean: rm -rf dist