Date: 01 May 2002 21:37:25 -0700 From: John Merryweather Cooper <john_m_cooper@yahoo.com> To: Ernst de Haan <znerd@freebsd.org> Cc: java@freebsd.org, ports@freebsd.org Subject: Re: Request for Review: bsd.java.mk patch Message-ID: <1020314246.33957.0.camel@johncoop.MSHOME> In-Reply-To: <200205011906.VAA21257@smtp.hccnet.nl> References: <200205011906.VAA21257@smtp.hccnet.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
Looks very good to me. Now I just have to convert jgnat and netrexx to
use it. :)
On Wed, 2002-05-01 at 13:06, Ernst de Haan wrote:
> Hi,
>
> Is there anyone out there just *waiting* to get a chance to review some
> changes to bsd.java.mk ? Well, if so, here's your chance! =)
>
> Seriously, a review would be appreciated. The only thing I did (hoped to do)
> was making everything a bit cleaner by introducting HAVE_ variables.
>
> Attached are both the patch from the current version of ports/Mk/bsd.java.mk
> and the result.
>
>
> Ernst
> ----
>
> #-*- mode: Fundamental; tab-width: 4; -*-
> # ex:ts=4
> #
> # bsd.java.mk - Support for Java-based ports.
> #
> # Created by: Ernst de Haan <znerd@FreeBSD.org>
> #
> # For FreeBSD committers:
> # Please send all suggested changes to the maintainer instead of committing
> # them to CVS yourself.
> #
> # $FreeBSD: ports/Mk/bsd.java.mk,v 1.9 2002/04/27 00:18:53 znerd Exp $
> #
>
> .if !defined(Java_Include)
>
> Java_Include= bsd.java.mk
> Java_Include_MAINTAINER= znerd@FreeBSD.org
>
> #
> # There are the following stages:
> #
> # Stage 1: Define constants
> # Stage 2: Deal with JAVA_HOME if it is already set
> # Stage 3: Determine which JDK ports are installed
> # Stage 4: Decide the exact JDK version if only a minimum version is specified
> # Stage 5: Decide the exact JDK to use
> # Stage 6: Define all settings for the port to use
> # Stage 7: Add any dependencies if necessary
> #
>
> . if defined(USE_JAVA)
>
>
> #-----------------------------------------------------------------------------
> # Stage 1: Define constants
> #
>
> # The complete list of Java versions supported.
> _JAVA_VERSIONS= 1.1 1.2 1.3 1.4
>
> # Set the JAVA_HOME directories for all recognized JDK's
> _JAVA_HOME_FREEBSD_1_1= ${LOCALBASE}/jdk1.1.8
> _JAVA_HOME_FREEBSD_1_2= ${LOCALBASE}/jdk1.2.2
> _JAVA_HOME_FREEBSD_1_3= ${LOCALBASE}/jdk1.3.1
> _JAVA_HOME_BLACKDOWN_LINUX_1_2= ${LOCALBASE}/linux-jdk1.2.2
> _JAVA_HOME_SUN_LINUX_1_2= ${LOCALBASE}/linux-sun-jdk1.2.2.011
> _JAVA_HOME_IBM_LINUX_1_3= ${LOCALBASE}/linux-ibm-jdk1.3.1
> _JAVA_HOME_SUN_LINUX_1_3= ${LOCALBASE}/linux-jdk1.3.1
> _JAVA_HOME_SUN_LINUX_1_4= ${LOCALBASE}/linux-jdk1.4.0
>
> # Set the JDK ports for all recognized JDK's
> _JAVA_PORT_FREEBSD_1_1= java/jdk
> _JAVA_PORT_FREEBSD_1_2= java/jdk12-beta
> _JAVA_PORT_FREEBSD_1_3= java/jdk13
> _JAVA_PORT_BLACKDOWN_LINUX_1_2= java/linux-jdk
> _JAVA_PORT_SUN_LINUX_1_2= java/linux-sun-jdk12
> _JAVA_PORT_IBM_LINUX_1_3= java/linux-ibm-jdk13
> _JAVA_PORT_SUN_LINUX_1_3= java/linux-jdk13
> _JAVA_PORT_SUN_LINUX_1_4= java/linux-jdk14
>
> # Set the name of the file that indicates that a JDK is indeed installed, as a
> # relative path within the JAVA_HOME directory.
> _JDK_FILE=bin/javac
>
> # Set the path to Jikes and define the Jikes dependency
> _JIKES_PATH= ${LOCALBASE}/bin/jikes
> _DEPEND_JIKES= ${_JIKES_PATH}:${PORTSDIR}/java/jikes
>
>
> #-----------------------------------------------------------------------------
> # Stage 2: Determine which JDK ports are installed
> #
>
> . undef HAVE_JAVA_FREEBSD_1_1
> . undef HAVE_JAVA_FREEBSD_1_2
> . undef HAVE_JAVA_FREEBSD_1_3
> . undef HAVE_JAVA_BLACKDOWN_LINUX_1_2
> . undef HAVE_JAVA_SUN_LINUX_1_2
> . undef HAVE_JAVA_SUN_LINUX_1_3
> . undef HAVE_JAVA_IBM_LINUX_1_3
> . undef HAVE_JAVA_SUN_LINUX_1_4
>
> . if exists(${_JAVA_HOME_FREEBSD_1_1}/${_JDK_FILE})
> HAVE_JAVA_FREEBSD_1_1= YES
> . endif
> . if exists(${_JAVA_HOME_FREEBSD_1_2}/${_JDK_FILE})
> HAVE_JAVA_FREEBSD_1_2= YES
> . endif
> . if exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE})
> HAVE_JAVA_FREEBSD_1_3= YES
> . endif
> . if exists(${_JAVA_HOME_BLACKDOWN_LINUX_1_2}/${_JDK_FILE})
> HAVE_JAVA_BLACKDOWN_LINUX_1_2= YES
> . endif
> . if exists(${_JAVA_HOME_SUN_LINUX_1_2}/${_JDK_FILE})
> HAVE_JAVA_SUN_LINUX_1_2= YES
> . endif
> . if exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE})
> HAVE_JAVA_SUN_LINUX_1_3= YES
> . endif
> . if exists(${_JAVA_HOME_IBM_LINUX_1_3}/${_JDK_FILE})
> HAVE_JAVA_IBM_LINUX_1_3= YES
> . endif
> . if exists(${_JAVA_HOME_SUN_LINUX_1_4}/${_JDK_FILE})
> HAVE_JAVA_SUN_LINUX_1_4= YES
> . endif
>
>
> #-----------------------------------------------------------------------------
> # Stage 3: Deal with JAVA_HOME if it is already set
> #
>
> # See if JAVA_HOME points to a known JDK. If it does, then undefine JAVA_HOME
> # and actually use JAVA_PORT instead, so that we do not screw with our
> # dependencies.
> . if defined(JAVA_HOME)
> _JAVA_HOME= ${JAVA_HOME}
> . undef(JAVA_HOME)
> . if ${_JAVA_HOME} == ${_JAVA_HOME_FREEBSD_1_1}
> JAVA_PORT= ${_JAVA_PORT_FREEBSD_1_1}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_FREEBSD_1_2}
> JAVA_PORT= ${_JAVA_PORT_FREEBSD_1_2}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_FREEBSD_1_3}
> JAVA_PORT= ${_JAVA_PORT_FREEBSD_1_3}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_BLACKDOWN_LINUX_1_2}
> JAVA_PORT= ${_JAVA_PORT_BLACKDOWN_LINUX_1_2}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_SUN_LINUX_1_2}
> JAVA_PORT= ${_JAVA_PORT_SUN_LINUX_1_2}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_IBM_LINUX_1_3}
> JAVA_PORT= ${_JAVA_PORT_IBM_LINUX_1_3}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_SUN_LINUX_1_3}
> JAVA_PORT= ${_JAVA_PORT_SUN_LINUX_1_3}
> . elif ${_JAVA_HOME} == ${_JAVA_HOME_SUN_LINUX_1_4}
> JAVA_PORT= ${_JAVA_PORT_SUN_LINUX_1_4}
> . else
> JAVA_HOME= ${_JAVA_HOME}
> . endif
> . endif
>
>
> #-----------------------------------------------------------------------------
> # Stage 4: Decide the exact JDK version if only a minimum version is specified
> #
>
> # If USE_JAVA is 1.1+, 1.2+, 1.3+ or 1.4+, then set it to 1.1, 1.2, 1.3 or
> # 1.4, depending on what JDK's are already installed. The FreeBSD JDK will be
> # preferred. The Sun JDK 1.4 for Linux is always the least preferred JDK.
> # However, the most respected rule is that if a JDK is already installed, then
> # no JDK will be downloaded unless necessary.
> #
> # The following rules will be used, per setting:
> #
> # If the setting is 1.1+, then use an existing 1.2 or 1.3 JDK if installed,
> # otherwise use the JDK 1.1.8 for FreeBSD if it is already installed. If no
> # other JDK than the Sun JDK 1.4 for Linux is installed, then that one will be
> # used. It is the least preferred alternative.
> #
> # If the setting is 1.2+, then use an already installed 1.2, 1.3 or 1.4 JDK.
> # If there is no such JDK, then set USE_JAVA to 1.2. An 1.3 JDK is preferred
> # over 1.2 JDK's.
> #
> # If the setting is 1.3+, then see if the Sun JDK 1.4 for Linux is installed,
> # while no 1.3 JDK's are installed. If that is the case, then USE_JAVA will be
> # set to 1.4. Otherwise it will be set to 1.3. All 1.3 JDK's are currently
> # preferred over a 1.4.0 JDK since it is considered less stable.
> #
> # If the setting is 1.4+, then set it to 1.4 right away. There is no other
> # option at the moment.
>
> . if (${USE_JAVA} == "1.1+")
> . if defined(HAVE_JAVA_FREEBSD_1_3) || \
> defined(HAVE_JAVA_SUN_LINUX_1_3) || \
> defined(HAVE_JAVA_IBM_LINUX_1_3)
> USE_JAVA= 1.3
> . elif defined(HAVE_JAVA_FREEBSD_1_2) || \
> defined(HAVE_JAVA_BLACKDOWN_LINUX_1_2) || \
> defined(HAVE_JAVA_SUN_LINUX_1_2)
> USE_JAVA= 1.2
> . elif !defined(HAVE_JAVA_SUN_LINUX_1_4)
> USE_JAVA= 1.1
> . else
> USE_JAVA= 1.4
> . endif
>
> . elif (${USE_JAVA} == "1.2+")
> . if defined(HAVE_JAVA_FREEBSD_1_3) || \
> defined(HAVE_JAVA_SUN_LINUX_1_3) || \
> defined(HAVE_JAVA_IBM_LINUX_1_3)
> USE_JAVA= 1.3
> . elif !defined(HAVE_JAVA_SUN_LINUX_1_4)
> USE_JAVA= 1.2
> . else
> USE_JAVA= 1.4
> . endif
> . elif (${USE_JAVA} == "1.3+")
> . if defined(HAVE_JAVA_FREEBSD_1_3) || \
> defined(HAVE_JAVA_SUN_LINUX_1_3) || \
> defined(HAVE_JAVA_IBM_LINUX_1_3) || \
> !defined(HAVE_JAVA_SUN_LINUX_1_4)
> USE_JAVA= 1.3
> . else
> USE_JAVA= 1.4
> . endif
> . elif (${USE_JAVA} == "1.4+")
> USE_JAVA= 1.4
> . else
> .BEGIN:
> @${ECHO} "${Java_Include}: Internal error. \"${USE_JAVA}\" is not caught as a valid value for USE_JAVA. Please send an email to ${Java_Include_MAINTAINER} with a detailed description of what you did and what the output was.";
> @${FALSE}
> . endif
>
>
> #-----------------------------------------------------------------------------
> # Stage 5: Decide the exact JDK to use
> #
>
> # Apply different settings for different values of USE_JAVA.
> #
> # If the port needs Java 1.1, then there's only one choice, the JDK 1.1.8 for
> # FreeBSD.
> . if (${USE_JAVA} == "1.1")
> JAVA_VENDOR= FreeBSD
> JAVA_VER= 1.1.8
> JAVA_OS= FreeBSD
> JAVA_HOME= ${_JAVA_HOME_FREEBSD_1_1}
> JAVA_PORT= ${_JAVA_PORT_FREEBSD_1_1}
>
> # If the port needs Java 1.2, then there are 2 choices. They are, in order or
> # preference:
> #
> # (1) JDK 1.2.2 for FreeBSD
> # (2) Blackdown JDK 1.2.2 for Linux
> #
> # If either the Blackdown or Sun JDK 1.2.2 (both for Linux) is installed, but
> # the FreeBSD JDK 1.2.2 is *not* installed, then the installed Linux JDK will
> # be used as the dependency. Otherwise the FreeBSD JDK 1.2.2 will be used as
> # the dependency.
> #
> # The FreeBSD JDK 1.2 is preferred over the Linux JDK's. Among these, the
> # Blackdown JDK is preferred over the Sun JDK.
> . elif ${USE_JAVA} == "1.2"
> . if defined(HAVE_JAVA_BLACKDOWN_LINUX_1_2) \
> && !defined(HAVE_JAVA_FREEBSD_1_2)
> JAVA_VENDOR= Blackdown
> JAVA_VER= 1.2.2
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_BLACKDOWN_LINUX_1_2}
> JAVA_PORT= ${_JAVA_PORT_BLACKDOWN_LINUX_1_2}
> . elif defined(HAVE_JAVA_SUN_LINUX_1_2) \
> && !defined(HAVE_JAVA_FREEBSD_1_2)
> JAVA_VENDOR= Sun
> JAVA_VER= 1.2.2
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_SUN_LINUX_1_2}
> JAVA_PORT= ${_JAVA_PORT_SUN_LINUX_1_2}
> . else
> JAVA_VENDOR= FreeBSD
> JAVA_VER= 1.2.2
> JAVA_OS= FreeBSD
> JAVA_HOME= ${_JAVA_HOME_FREEBSD_1_2}
> JAVA_PORT= ${_JAVA_PORT_FREEBSD_1_2}
> . endif
>
> # If the port needs Java 1.3, then there are 3 choices. They are, in order or
> # preference:
> #
> # (1) JDK 1.3.1 for FreeBSD
> # (2) Sun JDK 1.3.1 for Linux
> # (3) IBM JDK 1.3.1 for Linux
> #
> # If the FreeBSD JDK 1.3.1 is installed or if none of the 1.3.1 JDK's is
> # installed, then the FreeBSD JDK 1.3.1 is used as a dependency for the port.
> #
> # Otherwise, if the Sun JDK 1.3.1 is already installed, then that will be
> # used. If it is not installed, but the IBM JDK 1.3.1 is installed, then that
> # one will be used.
> . elif ${USE_JAVA} == "1.3"
> . if defined(HAVE_JAVA_IBM_LINUX_1_3) \
> && !defined(HAVE_JAVA_SUN_LINUX_1_3) \
> && !defined(HAVE_JAVA_FREEBSD_1_3)
> JAVA_VENDOR= IBM
> JAVA_VER= 1.3.1
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_IBM_LINUX_1_3}
> JAVA_PORT= ${_JAVA_PORT_IBM_LINUX_1_3}
> . elif defined(HAVE_JAVA_SUN_LINUX_1_3) \
> && !defined(HAVE_JAVA_FREEBSD_1_3)
> JAVA_VENDOR= Sun
> JAVA_VER= 1.3.1
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_SUN_LINUX_1_3}
> JAVA_PORT= ${_JAVA_PORT_SUN_LINUX_1_3}
> . else
> JAVA_VENDOR= FreeBSD
> JAVA_VER= 1.3.1
> JAVA_OS= FreeBSD
> JAVA_HOME= ${_JAVA_HOME_FREEBSD_1_3}
> JAVA_PORT= ${_JAVA_PORT_FREEBSD_1_3}
> . endif
>
> # If the port needs JDK 1.4, then there's currently only one choice, the Sun
> # JDK 1.4.0 for Linux.
> . elif ${USE_JAVA} == "1.4"
> JAVA_VENDOR= Sun
> JAVA_VER= 1.4.0
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_SUN_LINUX_1_4}
> JAVA_PORT= ${_JAVA_PORT_SUN_LINUX_1_4}
> . else
> .BEGIN:
> @${ECHO} "${PKGNAME}: \"${USE_JAVA}\" is not a valid value for USE_JAVA. It should be one of: ${_JAVA_VERSIONS} (with an optional \"+\" suffix.)";
> @${FALSE}
> . endif
>
>
> #-----------------------------------------------------------------------------
> # Stage 6: Define all settings for the port to use
>
> # At this stage both JAVA_HOME and JAVA_PORT are definitely given a value.
>
> # Define the location of the Java compiler. If USE_JIKES is set to YES, then
> # use Jikes. If USE_JIKES is set to NO, then don't use it. If it is set to a
> # different value, then fail with an error message. Otherwise USE_JIKES is not
> # set, in which case it is checked if Jikes is already installed. If it is,
> # then it will be used, otherwise it will not be used.
>
> # Only define JAVAC if NEED_JAVAC is defined
> . undef JAVAC
>
> # The default value for NEED_JAVAC is temporarily (!) YES
> # This will change as soon as the affecting ports have NEED_JAVAC=YES
> . if !defined(NEED_JAVAC)
> NEED_JAVAC= NO
> . endif
>
> . if (${NEED_JAVAC} == "YES") || (${NEED_JAVAC} == "yes")
> . if defined(USE_JIKES)
> . if (${USE_JIKES} == "YES") || (${USE_JIKES} == "yes")
> JAVAC= ${_JIKES_PATH}
> WITH_JIKES= YES
> . elif !((${USE_JIKES} == "NO") || (${USE_JIKES} == "no"))
> .BEGIN:
> @${ECHO} "${PKGNAME}: \"${USE_JIKES}\" is not a valid value for USE_JIKES. It should be YES or NO, or it should be undefined.";
> @${FALSE}
> . endif
> . elif exists(${_JIKES_PATH})
> JAVAC= ${_JIKES_PATH}
> WITH_JIKES= YES
> . endif
> . if !defined(JAVAC)
> JAVAC= ${JAVA_HOME}/bin/javac
> . endif
> . endif
>
> # Define the location of some more executables.
> APPLETVIEWER= ${JAVA_HOME}/bin/appletviewer
> JAR= ${JAVA_HOME}/bin/jar
> JAVA= ${JAVA_HOME}/bin/java
> JAVADOC= ${JAVA_HOME}/bin/javadoc
> JAVAH= ${JAVA_HOME}/bin/javah
> JAVAP= ${JAVA_HOME}/bin/javap
> JAVA_N2A= ${JAVA_HOME}/bin/native2ascii
> JAVA_SERIALVER= ${JAVA_HOME}/bin/serialver
> RMIC= ${JAVA_HOME}/bin/rmic
> RMIREGISTRY= ${JAVA_HOME}/bin/rmiregistry
>
> # Some executables only exists in JDK 1.2 and up
> . if defined(USE_JAVA) && ${USE_JAVA} != 1.1
> JAVA_KEYTOOL= ${JAVA_HOME}/bin/keytool
> JAVA_POLICYTOOL= ${JAVA_HOME}/bin/policytool
> RMID= ${JAVA_HOME}/bin/rmid
> . endif
>
> # Set the location of the ZIP or JAR file with all standard Java classes.
> . if defined(USE_JAVA) && ${USE_JAVA} == "1.1"
> JAVA_CLASSES= ${JAVA_HOME}/lib/classes.zip
> . else
> JAVA_CLASSES= ${JAVA_HOME}/jre/lib/rt.jar
> . endif
>
>
> #-----------------------------------------------------------------------------
> # Stage 7: Add any dependencies if necessary
>
> # Possibly add Jikes to the dependencies
> . if defined(JAVAC) && (${JAVAC} == ${_JIKES_PATH})
> . if !defined(NO_BUILD_DEPENDS_JAVA)
> BUILD_DEPENDS+= ${_DEPEND_JIKES}
> . endif
> . if !defined(NO_RUN_DEPENDS_JAVA)
> RUN_DEPENDS+= ${_DEPEND_JIKES}
> . endif
> . endif
>
> # Add the JDK port to the dependencies
> . if defined(NO_BUILD_DEPENDS_JAVA) && defined(NO_RUN_DEPENDS_JAVA)
> .BEGIN:
> @${ECHO} "${PKGNAME}: NO_BUILD_DEPENDS_JAVA and NO_RUN_DEPENDS_JAVA cannot be set at the same time.";
> @${FALSE}
> . endif
> _DEPEND_JAVA= ${JAVA}:${PORTSDIR}/${JAVA_PORT}
> . if !defined(NO_BUILD_DEPENDS_JAVA)
> BUILD_DEPENDS+= ${_DEPEND_JAVA}
> . endif
> . if !defined(NO_RUN_DEPENDS_JAVA)
> RUN_DEPENDS+= ${_DEPEND_JAVA}
> . endif
> . endif
> .endif
> ----
>
> ? 0.diff
> Index: bsd.java.mk
> ===================================================================
> RCS file: /home/ncvs/ports/Mk/bsd.java.mk,v
> retrieving revision 1.9
> diff -u -r1.9 bsd.java.mk
> --- bsd.java.mk 27 Apr 2002 00:18:53 -0000 1.9
> +++ bsd.java.mk 1 May 2002 19:03:38 -0000
> @@ -22,10 +22,11 @@
> #
> # Stage 1: Define constants
> # Stage 2: Deal with JAVA_HOME if it is already set
> -# Stage 3: Decide the exact JDK version if only a minimum version is specified
> -# Stage 4: Decide the exact JDK to use
> -# Stage 5: Define all settings for the port to use
> -# Stage 6: Add any dependencies if necessary
> +# Stage 3: Determine which JDK ports are installed
> +# Stage 4: Decide the exact JDK version if only a minimum version is specified
> +# Stage 5: Decide the exact JDK to use
> +# Stage 6: Define all settings for the port to use
> +# Stage 7: Add any dependencies if necessary
> #
>
> . if defined(USE_JAVA)
> @@ -68,7 +69,46 @@
>
>
> #-----------------------------------------------------------------------------
> -# Stage 2: Deal with JAVA_HOME if it is already set
> +# Stage 2: Determine which JDK ports are installed
> +#
> +
> +. undef HAVE_JAVA_FREEBSD_1_1
> +. undef HAVE_JAVA_FREEBSD_1_2
> +. undef HAVE_JAVA_FREEBSD_1_3
> +. undef HAVE_JAVA_BLACKDOWN_LINUX_1_2
> +. undef HAVE_JAVA_SUN_LINUX_1_2
> +. undef HAVE_JAVA_SUN_LINUX_1_3
> +. undef HAVE_JAVA_IBM_LINUX_1_3
> +. undef HAVE_JAVA_SUN_LINUX_1_4
> +
> +. if exists(${_JAVA_HOME_FREEBSD_1_1}/${_JDK_FILE})
> +HAVE_JAVA_FREEBSD_1_1= YES
> +. endif
> +. if exists(${_JAVA_HOME_FREEBSD_1_2}/${_JDK_FILE})
> +HAVE_JAVA_FREEBSD_1_2= YES
> +. endif
> +. if exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE})
> +HAVE_JAVA_FREEBSD_1_3= YES
> +. endif
> +. if exists(${_JAVA_HOME_BLACKDOWN_LINUX_1_2}/${_JDK_FILE})
> +HAVE_JAVA_BLACKDOWN_LINUX_1_2= YES
> +. endif
> +. if exists(${_JAVA_HOME_SUN_LINUX_1_2}/${_JDK_FILE})
> +HAVE_JAVA_SUN_LINUX_1_2= YES
> +. endif
> +. if exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE})
> +HAVE_JAVA_SUN_LINUX_1_3= YES
> +. endif
> +. if exists(${_JAVA_HOME_IBM_LINUX_1_3}/${_JDK_FILE})
> +HAVE_JAVA_IBM_LINUX_1_3= YES
> +. endif
> +. if exists(${_JAVA_HOME_SUN_LINUX_1_4}/${_JDK_FILE})
> +HAVE_JAVA_SUN_LINUX_1_4= YES
> +. endif
> +
> +
> +#-----------------------------------------------------------------------------
> +# Stage 3: Deal with JAVA_HOME if it is already set
> #
>
> # See if JAVA_HOME points to a known JDK. If it does, then undefine JAVA_HOME
> @@ -100,7 +140,7 @@
>
>
> #-----------------------------------------------------------------------------
> -# Stage 3: Decide the exact JDK version if only a minimum version is specified
> +# Stage 4: Decide the exact JDK version if only a minimum version is specified
> #
>
> # If USE_JAVA is 1.1+, 1.2+, 1.3+ or 1.4+, then set it to 1.1, 1.2, 1.3 or
> @@ -129,35 +169,35 @@
> # option at the moment.
>
> . if (${USE_JAVA} == "1.1+")
> -. if exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_IBM_LINUX_1_3}/${_JDK_FILE})
> +. if defined(HAVE_JAVA_FREEBSD_1_3) || \
> + defined(HAVE_JAVA_SUN_LINUX_1_3) || \
> + defined(HAVE_JAVA_IBM_LINUX_1_3)
> USE_JAVA= 1.3
> -. elif exists(${_JAVA_HOME_FREEBSD_1_2}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_BLACKDOWN_LINUX_1_2}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_SUN_LINUX_1_2}/${_JDK_FILE})
> +. elif defined(HAVE_JAVA_FREEBSD_1_2) || \
> + defined(HAVE_JAVA_BLACKDOWN_LINUX_1_2) || \
> + defined(HAVE_JAVA_SUN_LINUX_1_2)
> USE_JAVA= 1.2
> -. elif !exists(${_JAVA_HOME_SUN_LINUX_1_4}/${_JDK_FILE})
> +. elif !defined(HAVE_JAVA_SUN_LINUX_1_4)
> USE_JAVA= 1.1
> . else
> USE_JAVA= 1.4
> . endif
>
> . elif (${USE_JAVA} == "1.2+")
> -. if exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_IBM_LINUX_1_3}/${_JDK_FILE})
> +. if defined(HAVE_JAVA_FREEBSD_1_3) || \
> + defined(HAVE_JAVA_SUN_LINUX_1_3) || \
> + defined(HAVE_JAVA_IBM_LINUX_1_3)
> USE_JAVA= 1.3
> -. elif !exists(${_JAVA_HOME_SUN_LINUX_1_4})
> +. elif !defined(HAVE_JAVA_SUN_LINUX_1_4)
> USE_JAVA= 1.2
> . else
> USE_JAVA= 1.4
> . endif
> . elif (${USE_JAVA} == "1.3+")
> -. if exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE}) || \
> - exists(${_JAVA_HOME_IBM_LINUX_1_3}/${_JDK_FILE}) || \
> - !exists(${_JAVA_HOME_SUN_LINUX_1_4}/${_JDK_FILE})
> +. if defined(HAVE_JAVA_FREEBSD_1_3) || \
> + defined(HAVE_JAVA_SUN_LINUX_1_3) || \
> + defined(HAVE_JAVA_IBM_LINUX_1_3) || \
> + !defined(HAVE_JAVA_SUN_LINUX_1_4)
> USE_JAVA= 1.3
> . else
> USE_JAVA= 1.4
> @@ -172,7 +212,7 @@
>
>
> #-----------------------------------------------------------------------------
> -# Stage 4: Decide the exact JDK to use
> +# Stage 5: Decide the exact JDK to use
> #
>
> # Apply different settings for different values of USE_JAVA.
> @@ -200,15 +240,15 @@
> # The FreeBSD JDK 1.2 is preferred over the Linux JDK's. Among these, the
> # Blackdown JDK is preferred over the Sun JDK.
> . elif ${USE_JAVA} == "1.2"
> -. if exists(${_JAVA_HOME_BLACKDOWN_LINUX_1_2}/${_JDK_FILE}) \
> - && !exists(${_JAVA_HOME_FREEBSD_1_2}/${_JDK_FILE})
> +. if defined(HAVE_JAVA_BLACKDOWN_LINUX_1_2) \
> + && !defined(HAVE_JAVA_FREEBSD_1_2)
> JAVA_VENDOR= Blackdown
> JAVA_VER= 1.2.2
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_BLACKDOWN_LINUX_1_2}
> JAVA_PORT= ${_JAVA_PORT_BLACKDOWN_LINUX_1_2}
> -. elif exists(${_JAVA_HOME_SUN_LINUX_1_2}/${_JDK_FILE}) \
> - && !exists(${_JAVA_HOME_FREEBSD_1_2}/${_JDK_FILE})
> +. elif defined(HAVE_JAVA_SUN_LINUX_1_2) \
> + && !defined(HAVE_JAVA_FREEBSD_1_2)
> JAVA_VENDOR= Sun
> JAVA_VER= 1.2.2
> JAVA_OS= Linux
> @@ -236,16 +276,16 @@
> # used. If it is not installed, but the IBM JDK 1.3.1 is installed, then that
> # one will be used.
> . elif ${USE_JAVA} == "1.3"
> -. if exists(${_JAVA_HOME_IBM_LINUX_1_3}/${_JDK_FILE}) \
> - && !exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE}) \
> - && !exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE})
> +. if defined(HAVE_JAVA_IBM_LINUX_1_3) \
> + && !defined(HAVE_JAVA_SUN_LINUX_1_3) \
> + && !defined(HAVE_JAVA_FREEBSD_1_3)
> JAVA_VENDOR= IBM
> JAVA_VER= 1.3.1
> JAVA_OS= Linux
> JAVA_HOME= ${_JAVA_HOME_IBM_LINUX_1_3}
> JAVA_PORT= ${_JAVA_PORT_IBM_LINUX_1_3}
> -. elif exists(${_JAVA_HOME_SUN_LINUX_1_3}/${_JDK_FILE}) \
> - && !exists(${_JAVA_HOME_FREEBSD_1_3}/${_JDK_FILE})
> +. elif defined(HAVE_JAVA_SUN_LINUX_1_3) \
> + && !defined(HAVE_JAVA_FREEBSD_1_3)
> JAVA_VENDOR= Sun
> JAVA_VER= 1.3.1
> JAVA_OS= Linux
> @@ -275,7 +315,7 @@
>
>
> #-----------------------------------------------------------------------------
> -# Stage 5: Define all settings for the port to use
> +# Stage 6: Define all settings for the port to use
>
> # At this stage both JAVA_HOME and JAVA_PORT are definitely given a value.
>
> @@ -341,7 +381,7 @@
>
>
> #-----------------------------------------------------------------------------
> -# Stage 6: Add any dependencies if necessary
> +# Stage 7: Add any dependencies if necessary
>
> # Possibly add Jikes to the dependencies
> . if defined(JAVAC) && (${JAVAC} == ${_JIKES_PATH})
--
_
| |V| / ' || MacroHard -- \
\_| | | \_, || the perfection of form over |
----------------------------------|| substance, marketing over |
Web: http://www.borgsdemons.com || performance, and greed over |
AIM: johnmcooper || design . . . |
=====================================================================/
Public Key: http://www.borgsdemons.com/Personal/pgpkey.asc |
=====================================================================\
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-java" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1020314246.33957.0.camel>
