$NetBSD: patch-bin_mvn,v 1.8 2020/05/22 04:31:48 markd Exp $

Reconcile JAVA_HOME evaluated at run time on Darwin vs. hardcoded
via PKG_JAVA_HOME elsewhere.
Follow pkgsrc path convention.

--- bin/mvn.orig	2018-06-17 18:30:11.000000000 +0000
+++ bin/mvn
@@ -42,9 +42,11 @@ fi
 # OS specific support. $var _must_ be set to either true or false.
 cygwin=false;
 mingw=false;
+darwin=false;
 case "`uname`" in
   CYGWIN*) cygwin=true;;
   MINGW*) mingw=true;;
+  Darwin) darwin=true;;
 esac
 
 ## resolve links - $0 may be a link to Maven's home
@@ -89,12 +91,17 @@ if $mingw ; then
   # TODO classpath?
 fi
 
+if $darwin ; then
+  [ -n "$JAVA_HOME" ] &&
+  JAVA_HOME="`/usr/libexec/java_home 2>/dev/null`"
+fi
+
 if [ -z "$JAVA_HOME" ] ; then
-  JAVACMD=`which java`
-else
-  JAVACMD="$JAVA_HOME/bin/java"
+  JAVA_HOME="@PKG_JAVA_HOME@"
 fi
 
+JAVACMD="$JAVA_HOME/bin/java"
+
 if [ ! -x "$JAVACMD" ] ; then
   echo "The JAVA_HOME environment variable is not defined correctly" >&2
   echo "This environment variable is needed to run this program" >&2
@@ -102,7 +109,7 @@ if [ ! -x "$JAVACMD" ] ; then
   exit 1
 fi
 
-CLASSWORLDS_JAR=`echo "${MAVEN_HOME}"/boot/plexus-classworlds-*.jar`
+CLASSWORLDS_JAR=`echo "${MAVEN_HOME}"/lib/java/maven/boot/plexus-classworlds-*.jar`
 CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
 
 # For Cygwin, switch paths to Windows format before running java
@@ -192,8 +199,10 @@ exec "$JAVACMD" \
   $MAVEN_OPTS \
   $MAVEN_DEBUG_OPTS \
   -classpath "${CLASSWORLDS_JAR}" \
-  "-Dclassworlds.conf=${MAVEN_HOME}/bin/m2.conf" \
+  "-Dclassworlds.conf=@PKG_SYSCONFDIR@/m2.conf" \
   "-Dmaven.home=${MAVEN_HOME}" \
   "-Dlibrary.jansi.path=${MAVEN_HOME}/lib/jansi-native" \
   "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
+  "-Dorg.apache.maven.global-settings=@PKG_SYSCONFDIR@/settings.xml" \
+  "-Dorg.apache.maven.global-plugin-registry=@PKG_SYSCONFDIR@/plugin-registry.xml" \
   ${CLASSWORLDS_LAUNCHER} "$@"
