Skip site navigation (1)Skip section navigation (2)
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-ports" 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>