summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2014-10-18 16:16:49 -0700
committerJohn MacFarlane <jgm@berkeley.edu>2014-10-18 16:31:59 -0700
commit3b54fe244535a791a8f8d8bf6d367a5ebb2d47b6 (patch)
tree2f7dddf7abaa8213b36d5f5111b67a72bd1eabf7 /Makefile
parentf9e91b6d2d0837a331ce0c60609997b436e7f224 (diff)
Use browserify to make js code more modular.
* Moved js library code to `js/lib`. * `js/stmd.js` is now generated from these files using browserify. * Factored out `html5-entities.js` and `from-code-point.js` from main js parsing code (which is now `index.js`). * Moved `js/markdown` to `js/bin`.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile10
1 files changed, 7 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 1094b65..4a01824 100644
--- a/Makefile
+++ b/Makefile
@@ -4,6 +4,7 @@ SRCDIR?=src
DATADIR?=data
BENCHINP?=bench.md
PROG?=./stmd
+JSMODULES=$(wildcard js/lib/*.js)
.PHONY: all test spec benchjs testjs
all: $(SRCDIR)/case_fold_switch.inc $(PROG)
@@ -31,9 +32,11 @@ spec.pdf: spec.md template.tex specfilter.hs
test: spec.txt
perl runtests.pl $< $(PROG)
+js/stmd.js: js/lib/index.js ${JSMODULES}
+ browserify --standalone stmd $< -o $@
+
testjs: spec.txt
node js/test.js
-# perl runtests.pl js/markdown $<
benchjs:
node js/bench.js ${BENCHINP}
@@ -56,7 +59,7 @@ $(SRCDIR)/html/html_unescape.h: $(SRCDIR)/html/html_unescape.gperf
.PHONY: leakcheck clean fuzztest dingus upload
-dingus:
+dingus: js/stmd.js
cd js && echo "Starting dingus server at http://localhost:9000" && python -m SimpleHTTPServer 9000
leakcheck: $(PROG)
@@ -70,7 +73,7 @@ fuzztest:
for i in `seq 1 10`; do \
time cat /dev/urandom | head -c 100000 | iconv -f latin1 -t utf-8 | $(PROG) >/dev/null; done
-update-site: spec.html narrative.html
+update-site: spec.html narrative.html js/stmd.js
cp spec.html _site/
cp narrative.html _site/index.html
cp -r js/* _site/js/
@@ -78,6 +81,7 @@ update-site: spec.html narrative.html
clean:
-rm -f test $(SRCDIR)/*.o $(SRCDIR)/scanners.c $(SRCDIR)/html/*.o
+ -rm js/stmd.js
-rm -rf *.dSYM
-rm -f README.html
-rm -f spec.md fuzz.txt spec.html