diff --git a/dev-lang/openjdk/openjdk-1.7_2013_11_08.recipe b/dev-lang/openjdk/openjdk-1.7_2013_11_08.recipe index d32ff7eb5..39f1085dd 100644 --- a/dev-lang/openjdk/openjdk-1.7_2013_11_08.recipe +++ b/dev-lang/openjdk/openjdk-1.7_2013_11_08.recipe @@ -54,6 +54,7 @@ PROVIDES=" cmd:jar = $portVersion compat >= 1 cmd:jarsigner = $portVersion compat >= 1 cmd:java = $portVersion compat >= 1 + cmd:java_config = $portVersion compat >= 1 cmd:javac = $portVersion compat >= 1 cmd:javadoc = $portVersion compat >= 1 cmd:javah = $portVersion compat >= 1 @@ -191,4 +192,16 @@ INSTALL() mkdir -p $binDir symlinkRelative -s $jdkDir/bin/* $binDir # TODO: We should probably link only a subset. + + # create a java-config script in binDir + javaConfig=$binDir/java-config + sed -e "s,%JAVA_HOME%,$jdkDir," $portDir/sources/java-config.in \ + > $javaConfig + chmod a+x $javaConfig + + # create a profile.d file that sets up JAVA_HOME + jdkProfile=$dataDir/profile.d/openjdk.sh + mkdir -p $(dirname $jdkProfile) + echo JAVA_HOME=`java-config -H` > $jdkProfile + echo "export JAVA_HOME" >> $jdkProfile } diff --git a/dev-lang/openjdk/sources/java-config.in b/dev-lang/openjdk/sources/java-config.in new file mode 100644 index 000000000..cd2f1b4c9 --- /dev/null +++ b/dev-lang/openjdk/sources/java-config.in @@ -0,0 +1,37 @@ +#!/bin/sh + + +javaHome="%JAVA_HOME%" + + +printUsage() +{ + cat < +Print java configuration values. + +Options: + -h, --help - Print this help text. + -H - Print Java home path. +EOF +} + + +if [ $# -ne 1 ]; then + printUsage >&2 + exit 1 +fi + +case "$1" in + -H) + echo $javaHome + ;; + -h|--help) + printUsage + exit 0 + ;; + *) + printUsage >&2 + exit 1 + ;; +esac