summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--textproc/saxon-he/Makefile9
-rw-r--r--textproc/saxon-he/files/saxon.sh.in18
2 files changed, 26 insertions, 1 deletions
diff --git a/textproc/saxon-he/Makefile b/textproc/saxon-he/Makefile
index 0cf15bac7260..decab80302cb 100644
--- a/textproc/saxon-he/Makefile
+++ b/textproc/saxon-he/Makefile
@@ -29,12 +29,19 @@ JARFILES1= saxon-he-${PORTVERSION}.jar \
JARFILES2= jline-2.14.6.jar \
xmlresolver-${_XMLRESOLVER_VER}.jar \
xmlresolver-${_XMLRESOLVER_VER}-data.jar
-PLIST_FILES= ${JARFILES:S,^,%%JAVAJARDIR%%/,}
+PLIST_FILES= ${JARFILES:S,^,%%JAVAJARDIR%%/,} ${SCRIPTFILES}
+
+SUB_FILES= saxon.sh
+SUB_LIST= SAXON_JARS="${JARFILES:S,^,${JAVAJARDIR}/,}"
+SCRIPTFILES= bin/saxon bin/saxon-xquery
do-install:
@${MKDIR} ${STAGEDIR}${JAVAJARDIR}
${INSTALL_DATA} ${JARFILES1:S,^,${WRKSRC}/,} ${STAGEDIR}${JAVAJARDIR}
${INSTALL_DATA} ${JARFILES2:S,^,${WRKSRC}/lib/,} ${STAGEDIR}${JAVAJARDIR}
+.for scriptfile in ${SCRIPTFILES}
+ ${INSTALL_SCRIPT} ${WRKDIR}/saxon.sh ${STAGEDIR}${PREFIX}/${scriptfile}
+.endfor
post-stage:
# smoke test so we're sure we can load all required classes
diff --git a/textproc/saxon-he/files/saxon.sh.in b/textproc/saxon-he/files/saxon.sh.in
new file mode 100644
index 000000000000..3cb3014693c0
--- /dev/null
+++ b/textproc/saxon-he/files/saxon.sh.in
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+IAM="`basename "$0"`"
+
+if [ "${IAM}" = "saxon-xquery" ]
+then
+ LAUNCHER_CLASS="net.sf.saxon.Query"
+else
+ LAUNCHER_CLASS="net.sf.saxon.Transform"
+fi
+
+SAXON_CLASSPATH=""
+for jarfile in %%SAXON_JARS%%
+do
+ SAXON_CLASSPATH="${SAXON_CLASSPATH}:${jarfile}"
+done
+
+exec "%%LOCALBASE%%/bin/java" -classpath "${SAXON_CLASSPATH}" "${LAUNCHER_CLASS}" "$@"