* luci: strip comments in source target
[project/luci.git] / build / module.mk
1 .PHONY: all build compile luacompile luasource clean luaclean
2
3 all: build
4
5 build: luabuild gccbuild
6
7 luabuild: lua$(LUA_TARGET)
8
9 gccbuild: compile
10 compile:
11
12 clean: luaclean
13
14 luasource:
15         mkdir -p dist$(LUA_MODULEDIR)
16         mkdir -p dist$(LUCI_MODULEDIR)
17         mkdir -p dist$(HTDOCS)
18         cp -a root/* dist -R 2>/dev/null || true
19         cp -a luasrc/* dist$(LUCI_MODULEDIR) -R 2>/dev/null || true
20         cp -a lua/* dist$(LUA_MODULEDIR) -R 2>/dev/null || true
21         cp -a htdocs/* dist$(HTDOCS) -R 2>/dev/null || true
22         for i in $$(find dist -name .svn); do rm $$i -rf; done
23         for i in $$(find dist -type f -name '*.lua'); do perl -e 'undef $$/; open( F, "< $$ARGV[0]" ) || die $$!; $$src = <F>; close F; $$src =~ s/--\[\[.*?\]\]--//gs; $$src =~ s/^\s*--.*?\n//gm; open( F, "> $$ARGV[0]" ) || die $$!; print F $$src; close F' $$i; done
24
25 luacompile: luasource
26         for i in $$(find dist -name *.lua -not -name debug.lua); do $(LUAC) $(LUAC_OPTIONS) -o $$i $$i; done
27
28 luaclean:
29         rm -rf dist
30