1
0
Fork 0
easejs/Makefile

75 lines
1.9 KiB
Makefile
Raw Normal View History

2010-11-10 19:38:06 -05:00
path_build=./build
path_tools=./tools
path_lib=./lib
path_combine_output=${path_build}/ease.js
path_combine_output_full=${path_build}/ease-full.js
path_browser_test=${path_tools}/browser-test.html
path_test=./test
path_perf_test=${path_test}/perf
perf_tests := $(shell find "$(path_perf_test)" -name 'perf-*.js')
src_js := index.js $(wildcard $(path_lib)/*.js)
src_tests := index.js $(shell find "$(path_test)" -name test-* \
-o -name *Test* \
-o -name inc-*.js )
path_doc := ./doc
combine=${path_tools}/combine
.PHONY: combine min doc test test-combine
2010-11-10 19:38:06 -05:00
2011-05-23 18:38:13 -04:00
default: combine min
all: combine min doc
2011-06-05 13:53:05 -04:00
mkbuild: $(path_build)
# create build dir
$(path_build):
mkdir -p "$(path_build)"
# combine all modules into easily redistributable ease.js file (intended for
# browser)
$(path_combine_output): $(src_js) | mkbuild
${combine} > "$(path_combine_output)"
$(path_combine_output_full): $(src_js) $(src_tests) | mkbuild
INC_TEST=1 "$(combine)" > "${path_combine_output_full}"
2011-12-03 12:56:37 -05:00
$(path_build)/browser-test.html: $(path_browser_test) | $(path_combine_output_full)
cp "$(path_browser_test)" $@
$(path_build)/browser-test-min.html: $(path_browser_test) | $(path_combine_output_full)
cat "$(path_browser_test)" | sed 's/ease-full\.js/ease-full\.min\.js/' > $@
combine: $(path_combine_output) $(path_build)/browser-test.html
doc:
$(MAKE) -C $(path_doc)
2011-03-27 01:57:55 -04:00
test: default
$(MAKE) -C $(path_test)
2011-03-10 22:55:07 -05:00
# performance tests
perf: default $(perf_tests)
perf-%.js: default
@node $@
2011-12-03 12:56:37 -05:00
min: build/ease.min.js build/ease-full.min.js $(path_build)/browser-test-min.html
2011-05-23 18:27:42 -04:00
build/%.min.js: build/%.js
cat $(path_tools)/license.tpl > $@
2011-12-03 12:56:37 -05:00
node $(path_tools)/minify.js < $< > $@
2011-05-23 18:27:42 -04:00
install: doc-info
[ -d $(path_info_install) ] || mkdir -p $(path_info_install)
cp $(path_doc_output_info) $(path_info_install)
uninstall:
rm $(path_info_install)/easejs.info
# clean up build dir
2011-03-08 23:48:47 -05:00
clean:
$(MAKE) -C $(path_doc) clean
rm -rf "${path_build}"
2011-03-08 00:06:34 -05:00