mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 17:59:20 -04:00
. Make the version numbers consistent so they can be compared correctly.
E.g. for jdk1.6.0 and openjdk6 will use '6' as the version. . Modify the preference order for Java VMs used by the internal fallback logic to reflect that openjdk is now the default Java VM rather than diablo. . Remove code for Java vendors that are no longer in the ports tree (e.g. blackdown, ibm). . Remove code for handling version numbers that are no longer present in the tree (e.g. only 1.5 and up is supported). . Note that openjdk is a native Java VM. . If the environment variable JAVAVM_FALLBACK_ONLY is set then only use the internal logic to select a Java VM, don't use the ports logic even if the ports collection is installed. [1] . Update the manual page for JAVAVM_FALLBACK_ONLY. . Bump version to 2.4. PR: 167799 [1]
This commit is contained in:
parent
1d02afc1ea
commit
c1e89281c2
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=300819
3 changed files with 64 additions and 77 deletions
|
@ -8,7 +8,7 @@
|
|||
#
|
||||
|
||||
PORTNAME= javavmwrapper
|
||||
PORTVERSION= 2.3.5
|
||||
PORTVERSION= 2.4
|
||||
CATEGORIES= java
|
||||
MASTER_SITES= # none
|
||||
DISTFILES= # none
|
||||
|
|
|
@ -126,6 +126,16 @@ Java VM as options.
|
|||
For more information on environment variables which can be used to set
|
||||
options see
|
||||
.Pa %%PREFIX%%/etc/javavm_opts.conf.dist .
|
||||
.It Ev JAVAVM_FALLBACK_ONLY
|
||||
If this variable is set then instead of selecting the Java VM based on
|
||||
.Pa %%PORTSDIR%%/Mk/bsd.java.mk
|
||||
only the internal selection process is used.
|
||||
This may be useful to achieve consistent results for Java VM selection
|
||||
across multiple hosts, where some have the ports collection installed
|
||||
and others do not.
|
||||
However, this option, when used with scripts installed by a port, may
|
||||
result in Java VM selection inconsistent with that intended by the script
|
||||
author.
|
||||
.It Ev JAVAVM_DRYRUN
|
||||
When this variable is set, no Java VM is invoked.
|
||||
Instead, the Java VM wrapper prints out the following information:
|
||||
|
|
|
@ -173,8 +173,12 @@ sortConfiguration () {
|
|||
_VM=`dirname "${_VM}"`
|
||||
_VM=`dirname "${_VM}"`
|
||||
_VM=`basename "${_VM}"`
|
||||
VERSION=`echo ${VM} | sed -e 's|[^0-9]*||' 2>/dev/null`
|
||||
_VERSION=`echo ${_VM} | sed -e 's|[^0-9]*||' 2>/dev/null`
|
||||
# Consistent version numbering for various install directory names
|
||||
# including 'openjdk6', 'jdk1.6.0', 'linux-sun-jdk1.6.0', etc.
|
||||
VERSION=`echo ${VM} | sed -e 's|[^0-9]*||' -e 's|1\.||' \
|
||||
-e 's|\.[0-9]||' 2>/dev/null`
|
||||
_VERSION=`echo ${_VM} | sed -e 's|[^0-9]*||' -e 's|1\.||' \
|
||||
-e 's|\.[0-9]||' 2>/dev/null`
|
||||
if [ "${VERSION}" \> "${_VERSION}" ]; then
|
||||
_JAVAVMS="${_JAVAVMS}:${JAVAVM}:${_JAVAVM}"
|
||||
JAVAVM=
|
||||
|
@ -184,14 +188,14 @@ sortConfiguration () {
|
|||
continue
|
||||
else
|
||||
case "${VM}" in
|
||||
diablo-jdk*)
|
||||
openjdk*)
|
||||
_JAVAVMS="${_JAVAVMS}:${JAVAVM}:${_JAVAVM}"
|
||||
JAVAVM=
|
||||
continue
|
||||
;;
|
||||
diablo-jre*|openjdk*)
|
||||
diablo-jdk*)
|
||||
case "${_VM}" in
|
||||
diablo*)
|
||||
open*)
|
||||
_JAVAVMS="${_JAVAVMS}:${_JAVAVM}"
|
||||
continue
|
||||
;;
|
||||
|
@ -202,9 +206,9 @@ sortConfiguration () {
|
|||
;;
|
||||
esac
|
||||
;;
|
||||
jdk*)
|
||||
diablo-jre*|jdk*)
|
||||
case "${_VM}" in
|
||||
diablo*|open*)
|
||||
open*|diablo*)
|
||||
_JAVAVMS="${_JAVAVMS}:${_JAVAVM}"
|
||||
continue
|
||||
;;
|
||||
|
@ -217,7 +221,7 @@ sortConfiguration () {
|
|||
;;
|
||||
jre*|linux-sun-jdk*)
|
||||
case "${_VM}" in
|
||||
diablo*|open*|j*)
|
||||
open*|diablo*|j*)
|
||||
_JAVAVMS="${_JAVAVMS}:${_JAVAVM}"
|
||||
continue
|
||||
;;
|
||||
|
@ -228,22 +232,9 @@ sortConfiguration () {
|
|||
;;
|
||||
esac
|
||||
;;
|
||||
linux-sun-jre*|linux-blackdown-jdk*)
|
||||
linux-sun-jre*)
|
||||
case "${_VM}" in
|
||||
diablo*|open*|j*|linux-sun*)
|
||||
_JAVAVMS="${_JAVAVMS}:${_JAVAVM}"
|
||||
continue
|
||||
;;
|
||||
*)
|
||||
_JAVAVMS="${_JAVAVMS}:${JAVAVM}:${_JAVAVM}"
|
||||
JAVAVM=
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
linux-blackdown-jre*|linux-ibm-jdk*)
|
||||
case "${_VM}" in
|
||||
diablo*|open*|j*|linux-sun*|linux-blackdown*)
|
||||
open*|diablo*|j*|linux-sun*)
|
||||
_JAVAVMS="${_JAVAVMS}:${_JAVAVM}"
|
||||
continue
|
||||
;;
|
||||
|
@ -466,11 +457,11 @@ manualpageVM () {
|
|||
MANPATH="${JAVA_HOME}/man:${MANPATH}"
|
||||
export MANPATH
|
||||
if [ "${LANG}" = "ja_JP.eucJP" -a -x "${_JAVAVM_PREFIX}/bin/jman" ]; then
|
||||
setJavaOptions jman "`basename ${JAVA_HOME}`"
|
||||
exec ${_JAVAVM_PREFIX}/bin/jman -S 1 ${_JAVAVM_OPTS} ${1}
|
||||
setJavaOptions jman "`basename ${JAVA_HOME}`"
|
||||
exec ${_JAVAVM_PREFIX}/bin/jman -S 1 ${_JAVAVM_OPTS} ${1}
|
||||
else
|
||||
setJavaOptions man "`basename ${JAVA_HOME}`"
|
||||
exec man -S 1 ${_JAVAVM_OPTS} ${1}
|
||||
setJavaOptions man "`basename ${JAVA_HOME}`"
|
||||
exec man -S 1 ${_JAVAVM_OPTS} ${1}
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -481,39 +472,43 @@ setJavaHome() {
|
|||
# Use JAVA_HOME if it's set, unless its set to %%PREFIX%%
|
||||
if [ -n "${JAVA_HOME}" ]; then
|
||||
if [ "`realpath "${JAVA_HOME}"`" != "`realpath "${_JAVAVM_PREFIX}"`" ]; then
|
||||
if [ -f "${JAVA_HOME}/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/bin"
|
||||
return 0
|
||||
elif [ -f "${JAVA_HOME}/jre/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/jre/bin"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
if [ -f "${JAVA_HOME}/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/bin"
|
||||
return 0
|
||||
elif [ -f "${JAVA_HOME}/jre/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/jre/bin"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
unset JAVA_HOME
|
||||
|
||||
# Determine location of bsd.port.mk if it exists
|
||||
_JAVAVM_PORTSDIR=
|
||||
if [ -r /usr/share/mk/bsd.port.mk ]; then
|
||||
_JAVAVM_PORTSDIR=`"${_JAVAVM_MAKE}" -f /usr/share/mk/bsd.port.mk -V PORTSDIR 2>/dev/null`
|
||||
fi
|
||||
# Use bsd.java.mk to determine the VM to use if it exists unless
|
||||
# JAVAVM_FALLBACK_ONLY is set
|
||||
if [ -z "${JAVAVM_FALLBACK_ONLY}" ]; then
|
||||
# Determine location of bsd.port.mk if it exists
|
||||
_JAVAVM_PORTSDIR=
|
||||
if [ -r /usr/share/mk/bsd.port.mk ]; then
|
||||
_JAVAVM_PORTSDIR=`"${_JAVAVM_MAKE}" -f /usr/share/mk/bsd.port.mk -V PORTSDIR 2>/dev/null`
|
||||
fi
|
||||
|
||||
_JAVAVM_BSD_PORT_MK=
|
||||
if [ -n "${_JAVAVM_PORTSDIR}" -a -r "${_JAVAVM_PORTSDIR}/Mk/bsd.port.mk" ]; then
|
||||
_JAVAVM_BSD_PORT_MK="${_JAVAVM_PORTSDIR}/Mk/bsd.port.mk"
|
||||
fi
|
||||
_JAVAVM_BSD_PORT_MK=
|
||||
if [ -n "${_JAVAVM_PORTSDIR}" -a -r "${_JAVAVM_PORTSDIR}/Mk/bsd.port.mk" ]; then
|
||||
_JAVAVM_BSD_PORT_MK="${_JAVAVM_PORTSDIR}/Mk/bsd.port.mk"
|
||||
fi
|
||||
|
||||
# If bsd.port.mk was found, use that to determine the VM to use.
|
||||
if [ -n "${_JAVAVM_BSD_PORT_MK}" ]; then
|
||||
JAVA_HOME=`"${_JAVAVM_MAKE}" -f "${_JAVAVM_BSD_PORT_MK}" -V JAVA_HOME USE_JAVA=yes 2>/dev/null`
|
||||
if [ -n "${JAVA_HOME}" -a -f "${JAVA_HOME}/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/bin"
|
||||
return 0
|
||||
elif [ -n "${JAVA_HOME}" -a \
|
||||
-f "${JAVA_HOME}/jre/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/jre/bin"
|
||||
return 0
|
||||
# If bsd.port.mk was found, use that to determine the VM to use.
|
||||
if [ -n "${_JAVAVM_BSD_PORT_MK}" ]; then
|
||||
JAVA_HOME=`"${_JAVAVM_MAKE}" -f "${_JAVAVM_BSD_PORT_MK}" -V JAVA_HOME USE_JAVA=yes 2>/dev/null`
|
||||
if [ -n "${JAVA_HOME}" -a -f "${JAVA_HOME}/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/bin"
|
||||
return 0
|
||||
elif [ -n "${JAVA_HOME}" -a \
|
||||
-f "${JAVA_HOME}/jre/bin/${_JAVAVM_PROG}" ]; then
|
||||
_JAVAVM_PROG_PATH="${JAVA_HOME}/jre/bin"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -531,25 +526,13 @@ setJavaHome() {
|
|||
_JAVAVM_VERSION=
|
||||
for version in ${JAVA_VERSION}; do
|
||||
case "${version}" in
|
||||
1.1+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.1 1.2 1.3 1.4 1.5 1.6 1.7"
|
||||
;;
|
||||
1.2+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.2 1.3 1.4 1.5 1.6 1.7"
|
||||
;;
|
||||
1.3+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.3 1.4 1.5 1.6 1.7"
|
||||
;;
|
||||
1.4+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.4 1.5 1.6 1.7"
|
||||
;;
|
||||
1.5+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.5 1.6 1.7"
|
||||
;;
|
||||
1.6+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.6 1.7"
|
||||
;;
|
||||
1.6+)
|
||||
1.7+)
|
||||
_JAVAVM_VERSION="${_JAVAVM_VERSION} 1.7"
|
||||
;;
|
||||
*)
|
||||
|
@ -569,7 +552,7 @@ setJavaHome() {
|
|||
if [ -n "${JAVA_VERSION}" ]; then
|
||||
_JAVAVM_VERSION=`echo ${_JAVAVM_VM} | \
|
||||
sed -e 's|^[^0-9]*\([0-9]\)\.\([0-9]\)\.[0-9]$|\1.\2|' \
|
||||
-e 's|^[^0-9]*\([0-9]\)$|1.\1|'`
|
||||
-e 's|^[^0-9]*\([0-9]\)$|1.\1|'`
|
||||
for _JAVAVM_REQUESTED_VERSION in ${JAVA_VERSION}; do
|
||||
if [ "${_JAVAVM_VERSION}" = "${_JAVAVM_REQUESTED_VERSION}" ]; then
|
||||
_JAVAVM_VERSION=
|
||||
|
@ -584,7 +567,7 @@ setJavaHome() {
|
|||
if [ -n "${JAVA_OS}" ]; then
|
||||
_JAVAVM_OS=
|
||||
case "${_JAVAVM_VM}" in
|
||||
diablo*|j*)
|
||||
diablo*|j*|openjdk*)
|
||||
_JAVAVM_OS=native
|
||||
;;
|
||||
linux*)
|
||||
|
@ -605,22 +588,16 @@ setJavaHome() {
|
|||
if [ -n "${JAVA_VENDOR}" ]; then
|
||||
_JAVAVM_VENDOR=
|
||||
case "${_JAVAVM_VM}" in
|
||||
linux-blackdown*)
|
||||
_JAVAVM_VENDOR=blackdown
|
||||
;;
|
||||
diablo*)
|
||||
_JAVAVM_VENDOR=freebsd
|
||||
;;
|
||||
j*)
|
||||
_JAVAVM_VENDOR=bsdjava
|
||||
;;
|
||||
linux-ibm*)
|
||||
_JAVAVM_VENDOR=ibm
|
||||
;;
|
||||
openjdk*)
|
||||
_JAVAVM_VENDOR=openjdk
|
||||
;;
|
||||
linux-sun*)
|
||||
linux*)
|
||||
_JAVAVM_VENDOR=sun
|
||||
;;
|
||||
esac
|
||||
|
|
Loading…
Add table
Reference in a new issue