allow java/openjdk6 port to use itself or jdk16 as bootstrap jdks

Jonathan Chen jonc at chen.org.nz
Sun May 10 21:23:05 UTC 2009


>Submitter-Id:	current-users
>Originator:	Jonathan Chen
>Organization:	
>Confidential:	no 
>Synopsis:	allow java/openjdk6 port to use itself or jdk16 as bootstrap jdks
>Severity:	non-critical
>Priority:	low
>Category:	ports
>Class:		change-request
>Release:	FreeBSD 7.2-PRERELEASE amd64
>Environment:
System: FreeBSD osiris.chen.org.nz 7.2-PRERELEASE FreeBSD 7.2-PRERELEASE #0: Sun Apr 26 09:33:29 NZST 2009 root at osiris.chen.org.nz:/usr/obj/usr/src/sys/OSIRIS amd64
>Description:

Currently, the java/openjdk6 port will only use diablo-jdk1.6.0
to boostrap itself. This patch will allow it to use a currently
installed java/openjdk6 port or a java/jdk16 port as bootstrap
jdks in preference to diablo-jdk.

The patch is liberally adapted from the java/jdk16 Makefile.

>How-To-Repeat:
>Fix:


--- Makefile.orig	2009-05-11 08:31:46.000000000 +1200
+++ Makefile	2009-05-11 08:54:22.000000000 +1200
@@ -52,10 +52,25 @@
 
 ONLY_FOR_ARCHS=	amd64 i386
 
-BOOTSTRAP_JDKS=	${LOCALBASE}/diablo-jdk1.6.0
+BOOTSTRAP_JDKS=	${LOCALBASE}/openjdk6 \
+		${LOCALBASE}/jdk1.6.0 \
+		${LOCALBASE}/diablo-jdk1.6.0
+
+# do we have valid native jdk installed?
+.for CJDK in ${BOOTSTRAP_JDKS}
+.  if !defined(BOOTSTRAPJDKDIR) && exists(${CJDK}/bin/javac)
+BOOTSTRAPJDKDIR=	${CJDK}
+.  endif
+.endfor
+
+# if no valid jdk found, set dependency
+.if !defined(BOOTSTRAPJDKDIR)
+BOOTSTRAPJDKDIR?=	${LOCALBASE}/diablo-jdk1.6.0
+BUILD_DEPENDS+=		${BOOTSTRAPJDKDIR}/bin/javac:${PORTSDIR}/java/diablo-jdk16
+.endif
 
 MAKE_ENV=	LANG=C LC_ALL=C \
-		ALT_BOOTDIR=${BOOTSTRAP_JDKS} \
+		ALT_BOOTDIR=${BOOTSTRAPJDKDIR} \
 		ALT_FREETYPE_HEADERS_PATH=${LOCALBASE}/include \
 		ALT_FREETYPE_LIB_PATH=${LOCALBASE}/lib \
 		ALT_X11_PATH=${LOCALBASE} \


More information about the freebsd-java mailing list