aboutsummaryrefslogtreecommitdiff
path: root/java/javavmwrapper
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2012-10-28 02:11:29 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2012-10-28 02:11:29 +0000
commitace34c1a63d2023b28ff447b8f2f73f81b4b4a83 (patch)
treee5a8bb5e922e547d2f7d8bc2ecd235875f5b02c7 /java/javavmwrapper
parent1f2c8b09c343a1cc51d6682ab68188c6518d1f6f (diff)
downloadports-ace34c1a63d2023b28ff447b8f2f73f81b4b4a83.tar.gz
ports-ace34c1a63d2023b28ff447b8f2f73f81b4b4a83.zip
- Ignore bootstrap-openjdk when we automatically register existing JVMs.
- Make sure to destroy all symlinks pointing to ${PREFIX}/bin/javavm and ${PREFIX}/etc/javavms when we deinstall the package. Reviewed by: glewis (maintainer) Feature safe: yes
Notes
Notes: svn path=/head/; revision=306536
Diffstat (limited to 'java/javavmwrapper')
-rw-r--r--java/javavmwrapper/Makefile11
-rw-r--r--java/javavmwrapper/files/pkg-install.in11
-rw-r--r--java/javavmwrapper/pkg-deinstall25
3 files changed, 19 insertions, 28 deletions
diff --git a/java/javavmwrapper/Makefile b/java/javavmwrapper/Makefile
index d2a85c17f49a..77d6450b46ec 100644
--- a/java/javavmwrapper/Makefile
+++ b/java/javavmwrapper/Makefile
@@ -1,14 +1,11 @@
-# New ports collection makefile for: javavmwrapper
-# Date created: 10 June 2000
-# Whom: Maxim Sobolev <sobomax@FreeBSD.org>
-#
+# Created by: Maxim Sobolev <sobomax@FreeBSD.org>
# $FreeBSD$
#
# This port is self contained in the src directory.
-#
PORTNAME= javavmwrapper
PORTVERSION= 2.4
+PORTREVISION= 1
CATEGORIES= java
MASTER_SITES= # none
DISTFILES= # none
@@ -53,10 +50,10 @@ do-configure:
do-install:
${INSTALL_SCRIPT} ${WRKDIR}/classpath.sh ${PREFIX}/bin/classpath
${INSTALL_SCRIPT} ${WRKDIR}/javavmwrapper.sh ${PREFIX}/bin/javavm
- ${LN} -sf ${PREFIX}/bin/javavm ${PREFIX}/bin/registervm
- ${LN} -sf ${PREFIX}/bin/javavm ${PREFIX}/bin/unregistervm
${LN} -sf ${PREFIX}/bin/javavm ${PREFIX}/bin/checkvms
${LN} -sf ${PREFIX}/bin/javavm ${PREFIX}/bin/manvm
+ ${LN} -sf ${PREFIX}/bin/javavm ${PREFIX}/bin/registervm
+ ${LN} -sf ${PREFIX}/bin/javavm ${PREFIX}/bin/unregistervm
.for _man in checkvms.1 javavm.1 manvm.1 registervm.1
${INSTALL_MAN} ${WRKDIR}/${_man} ${MAN1PREFIX}/man/man1
.endfor
diff --git a/java/javavmwrapper/files/pkg-install.in b/java/javavmwrapper/files/pkg-install.in
index 92a7d10b9e97..a978b3f5abf6 100644
--- a/java/javavmwrapper/files/pkg-install.in
+++ b/java/javavmwrapper/files/pkg-install.in
@@ -21,9 +21,14 @@ else
fi
# Ensure all JDKs and JREs are installed
-for jvm in "${LOCALBASE}"/*jdk* "${LOCALBASE}"/*jre*; do
- if [ -x "${jvm}/bin/java" ]; then
- "${PKG_PREFIX}"/bin/registervm "${jvm}/bin/java" > /dev/null 2>&1
+_excl_dirs='bootstrap-openjdk'
+_find_expr='-depth 2 -regex .*/bin/java'
+for dir in ${_excl_dirs}; do
+ _find_expr="${_find_expr} ! -regex ${dir}/bin/java"
+done
+for jvm in `cd "${LOCALBASE}" && find *jdk* *jre* ${_find_expr}`; do
+ if [ -x "${LOCALBASE}/${jvm}" ]; then
+ "${PKG_PREFIX}"/bin/registervm "${LOCALBASE}/${jvm}" > /dev/null 2>&1
fi
done
diff --git a/java/javavmwrapper/pkg-deinstall b/java/javavmwrapper/pkg-deinstall
index dfac4ee292df..fd351f3b8246 100644
--- a/java/javavmwrapper/pkg-deinstall
+++ b/java/javavmwrapper/pkg-deinstall
@@ -21,6 +21,11 @@ if [ -f "${OPTION_CONF}" -a -f "${OPTION_CONF}.dist" ]; then
fi
fi
+# Destroy the symbolic links that were created for every executable for a VM.
+find -L ${PKG_PREFIX}/bin -samefile ${PKG_PREFIX}/bin/javavm \
+ \! -name checkvms \! -name javavm \! -name manvm \
+ \! -name registervm \! -name unregistervm | xargs rm -f
+
# The configuration file
CONF="${PKG_PREFIX}/etc/javavms"
@@ -35,23 +40,7 @@ if [ ! -r "${CONF}" ]; then
exit 1
fi
-# Destroy the symbolic links that were created for every executable for a VM.
-cat "${CONF}" | \
-(
-while read JAVAVM; do
- VM=`echo "${JAVAVM}" | sed -E 's|[[:space:]]*#.*||' 2>/dev/null`
- JAVA_HOME=`dirname "${VM}"`
- JAVA_HOME=`dirname "${JAVA_HOME}"`
- for exe in "${JAVA_HOME}"/bin/* "${JAVA_HOME}"/jre/bin/*; do
- exe=`basename "${exe}"`
- if [ -L "${PKG_PREFIX}/bin/${exe}" -a \
- "`ls -ld "${PKG_PREFIX}/bin/${exe}" 2>/dev/null | \
- awk '/->/{print $NF;exit 0}END{exit 1}'`" = \
- "${PKG_PREFIX}/bin/javavm" ]; then
- rm "${PKG_PREFIX}/bin/${exe}"
- fi
- done;
-done;
-)
+# Remove the configuration file.
+rm -f "${CONF}"
exit 0