lua: Fix exception on literal empty list
[jackhill/mal.git] / lua / Makefile
CommitLineData
9d42904e
JM
1TESTS =
2
3SOURCES_BASE = utils.lua types.lua reader.lua printer.lua
90f618cb 4SOURCES_LISP = env.lua core.lua stepA_mal.lua
9d42904e
JM
5SOURCES = $(SOURCES_BASE) $(SOURCES_LISP)
6
7all: libs
8
8e2d4a4c 9dist: mal.lua mal
5245b079
JM
10
11SOURCE_NAMES = $(patsubst %.lua,%,$(SOURCES))
12mal.lua: $(SOURCES)
8e2d4a4c 13 echo "local $(foreach n,$(SOURCE_NAMES),$(n),) M" > $@
5245b079
JM
14 echo "M={} $(foreach n,$(SOURCE_NAMES),$(n)=M);" >> $@
15 cat $+ | grep -v -e "return M$$" \
16 -e "return Env" \
17 -e "local M =" \
18 -e "^#!" \
19 $(foreach n,$(SOURCE_NAMES),-e "require('$(n)')") >> $@
8e2d4a4c
JM
20
21mal: mal.lua
22 echo "#!/usr/bin/env lua" > $@
23 cat $< >> $@
5245b079
JM
24 chmod +x $@
25
9d42904e
JM
26
27clean:
8e2d4a4c 28 rm -f linenoise.so mal.lua mal
72f67324 29 rm -rf lib/lua/5.1
9d42904e 30
5245b079
JM
31.PHONY: stats tests $(TESTS)
32
9d42904e
JM
33stats: $(SOURCES)
34 @wc $^
f15b4021 35 @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*--|^[[:space:]]*$$" $^ | wc` "[comments/blanks]"
9d42904e
JM
36stats-lisp: $(SOURCES_LISP)
37 @wc $^
f15b4021 38 @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*--|^[[:space:]]*$$" $^ | wc` "[comments/blanks]"
9d42904e
JM
39
40
41.PHONY: libs
42libs: linenoise.so
43
44linenoise.so:
45 luarocks install --tree=./ linenoise
46 ln -sf lib/lua/5.1/linenoise.so $@
47