Commit | Line | Data |
---|---|---|
ecdbada1 JM |
1 | TESTS = |
2 | ||
8e2d4a4c JM |
3 | SOURCES_BASE = lib/types/types.factor lib/reader/reader.factor lib/printer/printer.factor |
4 | SOURCES_LISP = lib/env/env.factor lib/core/core.factor stepA_mal/stepA_mal.factor | |
ecdbada1 JM |
5 | SOURCES = $(SOURCES_BASE) $(SOURCES_LISP) |
6 | ||
8e2d4a4c JM |
7 | all: |
8 | true | |
9 | ||
10 | dist: mal.factor mal | |
11 | ||
12 | # dependency order (env must come before types) | |
13 | ORDERED_SOURCES = $(filter %env.factor,$(SOURCES)) $(filter-out %env.factor,$(SOURCES)) | |
14 | mal.factor: $(ORDERED_SOURCES) | |
15 | cat $+ | sed '/^USING:/,/;/ s/ *lib.[a-z]*//g' > $@ | |
16 | ||
17 | mal: mal.factor | |
18 | echo '#!/usr/bin/env factor' > $@ | |
19 | cat $< >> $@ | |
20 | chmod +x $@ | |
21 | ||
22 | # TODO: standalone compiled app | |
23 | #mal.factor: $(SOURCES) | |
24 | # mkdir -p dist_tmp; \ | |
25 | # FDIR=$$(dirname $$(readlink -f $$(which factor))); \ | |
26 | # for f in $${FDIR}/*; do ln -sf $$f dist_tmp/; done; \ | |
27 | # rm dist_tmp/factor; \ | |
28 | # cp $${FDIR}/factor dist_tmp/factor; \ | |
29 | # HOME=/mal FACTOR_ROOTS=. dist_tmp/factor dist.factor | |
30 | # #cat $+ | sed 's///' >> $@ | |
31 | ||
32 | clean: | |
33 | rm -f mal.factor | |
34 | ||
ecdbada1 JM |
35 | .PHONY: stats stats-lisp |
36 | ||
37 | stats: $(SOURCES) | |
38 | @wc $^ | |
f15b4021 | 39 | @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*\!|^[[:space:]]*$$" $^ | wc` "[comments/blanks]" |
ecdbada1 JM |
40 | stats-lisp: $(SOURCES_LISP) |
41 | @wc $^ | |
f15b4021 | 42 | @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*\!|^[[:space:]]*$$" $^ | wc` "[comments/blanks]" |
ecdbada1 | 43 |