summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authormikesamuel <mikesamuel@ad8eed46-c659-4a31-e19d-951d88f54425>2011-03-09 18:53:36 +0000
committermikesamuel <mikesamuel@ad8eed46-c659-4a31-e19d-951d88f54425>2011-03-09 18:53:36 +0000
commitb5c263484c078e717d33056ceeb1a67f26f45f54 (patch)
treebc10f747b25e81d026750c8516b14eab2035322b /Makefile
parenta35e496e40710c4561f2fc40c59e4b84cd1c5ec8 (diff)
downloadsanitizer-b5c263484c078e717d33056ceeb1a67f26f45f54.tar.gz
First pass at a Makefile target to allow easy building of distributions.
git-svn-id: http://owasp-java-html-sanitizer.googlecode.com/svn/trunk@14 ad8eed46-c659-4a31-e19d-951d88f54425
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile32
1 files changed, 32 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index cc1837d..024cefe 100644
--- a/Makefile
+++ b/Makefile
@@ -44,3 +44,35 @@ out/javadoc.tstamp: src/main/org/owasp/html/*.java
-J-Xmx250m -nohelp -sourcetab 8 -docencoding UTF-8 -protected \
-encoding UTF-8 -author -version src/main/org/owasp/html/*.java \
&& touch out/javadoc.tstamp
+
+# Package the documentation, and libraries in the distrib directory,
+# and create a script containing svn commands to commit those changes.
+distrib: out/run_me_before_committing_release.sh
+out/run_me_before_committing_release.sh: clean out/staging.tstamp
+ tools/update_tree_in_svn.py out/staging distrib > $@
+ chmod +x $@
+out/staging.tstamp: out/javadoc.tstamp out/classes.tstamp
+ mkdir -p out/staging
+ echo Copying Javadoc
+ rm -rf out/staging/javadoc
+ cp -r out/javadoc out/staging/javadoc
+ echo Suppressing spurious Javadoc diffs
+ for doc_html in $$(find out/staging/javadoc -name \*.html); do \
+ perl -i -pe 's/<!-- Generated by javadoc .+?-->/<!-- Generated by javadoc -->/; s/<META NAME="date" CONTENT="[^"]*">//' "$$doc_html"; \
+ done
+ echo Linking required jars
+ mkdir -p out/staging/lib
+ for jar in $$(echo ${CLASSPATH} | tr : ' '); do \
+ cp "$$jar" out/staging/lib/; \
+ cp "$$(dirname $$jar)"/COPYING out/staging/lib/"$$(basename $$jar .jar)"-COPYING; \
+ done
+ echo Bundling compiled classes
+ jar cf out/staging/lib/owasp-java-html-sanitizer.jar -C out org
+ echo Bundling sources
+ for f in $$(find src/main -name \*.java); do \
+ mkdir -p out/staging/"$$(dirname $$f)"; \
+ cp "$$f" out/staging/"$$f"; \
+ done
+ jar cf out/staging/lib/owasp-java-html-sanitizer-src.jar -C out/staging/src/main org
+ rm -rf out/staging/org/src
+ touch $@