#!/usr/bin/make -f include /usr/share/javahelper/java-vars.mk MDWN_DOCS = $(patsubst %.md,%.html,$(wildcard $(CURDIR)/*.md)) PRODUCED_JAR=honeysql.jar export CLASSPATH=/usr/share/java/clojure.jar %: dh $@ --with javahelper --with jh_maven_repo_helper override_jh_build: $(MDWN_DOCS) jar cf $(PRODUCED_JAR) -C src . mkdir -p $(CURDIR)/doc/html && mv $(CURDIR)/*.html $(CURDIR)/doc/html override_jh_classpath: jh_classpath $(PRODUCED_JAR) override_jh_clean: jh_clean rm -f $(CURDIR)/$(PRODUCED_JAR) rm -rf $(CURDIR)/doc/html # Tests can't run in a random order (#907765): override_dh_auto_test: ORDERED_TESTS=honeysql/format_test.cljc honeysql/core_test.cljc override_dh_auto_test: EXPECTED=$(shell echo "$(ORDERED_TESTS)" | sed 's/ /\n/g' | sort | xargs) override_dh_auto_test: FOUND=$(shell cd test && find -name '*.cljc' | sed 's,^[.]/,,' | sort | xargs) override_dh_auto_test: # Make sure to detect when tests appear or disappear: @if [ "$(FOUND)" != "$(EXPECTED)" ]; then \ echo "E: sanity check failed, available tests don't match known tests:"; \ echo " - found: $(FOUND)"; \ echo " - expected: $(EXPECTED)"; \ echo "=> Please update ORDERED_TESTS in debian/rules accordingly"; \ exit 1; \ fi # Run tests: (cd test && clojure -cp $(CURDIR)/$(PRODUCED_JAR) $(ORDERED_TESTS)) %.html:%.md cat debian/header.html > $@ sed -i'' -e 's#@TITLE@#$(shell head -n 1 $< | sed 's/^#*\s*//')#g' $@ markdown $< >> $@ cat debian/footer.html >> $@