6 $(info Interesting targets
:)
7 $(info lint
- validate source
(with jshint
))
8 $(info test - run tests
(with jstest
))
9 $(info ugly
- generate minified source files
)
10 $(info dist - generate redistributables
(if git tagged
))
12 $(info (Running these may download packages from npm.
))
17 SOURCES
:= rrr.js term.js
18 JSTEST_SOURCES
+= $(SOURCES
)
23 git-describe
= $(shell $(GIT
) describe
--tags --always
$1)
25 UGLIFIED
:= $(call uglify-stampify
,$(SOURCES
))
27 JSHINTCONFIG
:= tests
/jshint.config
28 JSSTAMPDIR
:= build
/stamp
30 TESTS
:= $(wildcard tests
/*.js
)
31 LINTS
:= $(call jshint-stampify
,$(SOURCES
) $(TESTS
))
32 TEST_TARGETS
= $(patsubst %.js
,build
/stamp
/tests
/%.js.
test,$(SOURCES
))
35 .PHONY
: all check lint
test ugly
dist clean distclean install
43 ugly
: check $(UGLIFIED
)
57 dist: check build
/dist/$(PKGNAME
)-$(call git-describe
).
tar.gz
59 $(PKGNAME
)-%.
tar.gz
: | .git
61 $(GIT
) archive
--prefix=$(PKGNAME
)-$(*F
)/ --output
=$@
$(*F
)