1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
#!/usr/bin/make -f
include /usr/share/javahelper/java-vars.mk
MDWN_DOCS = $(patsubst %.md,%.html,$(wildcard $(CURDIR)/*.md))
PRODUCED_JAR=puppetlabs-ring-middleware.jar
export CLASSPATH=/usr/share/java/clojure.jar:/usr/share/java/clj-time.jar:/usr/share/java/cheshire.jar:/usr/share/java/tools.logging.jar:/usr/share/java/prismatic-schema.jar:/usr/share/java/puppetlabs-http-client.jar:/usr/share/java/kitchensink.jar:/usr/share/java/ssl-utils.jar:/usr/share/java/ring-core.jar:/usr/share/java/slingshot.jar
TEST_CLASSPATH=/usr/share/java/trapperkeeper-test.jar:/usr/share/java/trapperkeeper-webserver-jetty9.jar:/usr/share/java/kitchensink-test.jar:/usr/share/java/compojure.jar:/usr/share/java/tools.reader.jar:/usr/share/java/tools.macro.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 (#917600):
override_dh_auto_test: ORDERED_TESTS=puppetlabs/ring_middleware/utils_test.clj puppetlabs/ring_middleware/testutils/common.clj puppetlabs/ring_middleware/core_test.clj
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 '*.clj' | 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):$(CLASSPATH):$(TEST_CLASSPATH) $(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 >> $@
|