c6c7ede67fdbfc58350f8d069dbef9c42ce31c89
[project/luci.git] / core / Makefile
1 LUAC = luac
2 LUAC_OPTIONS = -s
3
4 FILES = ffluci/debug.lua ffluci/view/*.htm ffluci/view/cbi/*.htm ffluci/i18n/*
5
6 CFILES = ffluci/util.lua ffluci/http.lua ffluci/fs.lua \
7 ffluci/sys.lua ffluci/model/uci.lua ffluci/model/ipkg.lua \
8 ffluci/config.lua ffluci/i18n.lua ffluci/template.lua \
9 ffluci/cbi.lua ffluci/dispatcher.lua ffluci/menu.lua ffluci/init.lua 
10
11 DIRECTORIES = ffluci/model/cbi ffluci/model/menu ffluci/controller ffluci/i18n ffluci/view/cbi
12
13 OUTDIRS = $(DIRECTORIES:%=dist/%)
14 INFILES = $(CFILES:%=src/%)
15 OUTFILE = ffluci/init.lua
16 CPFILES = $(FILES:%=src/%)
17
18 .PHONY: all compile source depends clean
19
20 all: compile
21
22 depends:
23         mkdir -p $(OUTDIRS)
24         for i in $(CPFILES); do if [ -f "$$i" ]; then i=$$(echo $$i | cut -d/ -f2-); \
25                 mkdir -p dist/$$(dirname $$i); cp src/$$i dist/$$i; fi; done
26
27 compile: depends
28         $(LUAC) $(LUAC_OPTIONS) -o dist/$(OUTFILE) $(INFILES)
29         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
30         
31
32 source: depends
33         for i in $(CFILES); do cp src/$$i dist/$$i; done
34         
35         
36 clean:
37         rm dist -rf