Wed Oct 2 13:16:29 2019 UTC ()
Add openjdk11 and set it as default for NetBSD/amd64 and /i386 7 or later


(ryoon)
diff -r1.116 -r1.117 pkgsrc/mk/java-vm.mk

cvs diff -r1.116 -r1.117 pkgsrc/mk/java-vm.mk (expand / switch to unified diff)

--- pkgsrc/mk/java-vm.mk 2019/05/02 08:36:10 1.116
+++ pkgsrc/mk/java-vm.mk 2019/10/02 13:16:29 1.117
@@ -1,27 +1,27 @@ @@ -1,27 +1,27 @@
1# $NetBSD: java-vm.mk,v 1.116 2019/05/02 08:36:10 wiz Exp $ 1# $NetBSD: java-vm.mk,v 1.117 2019/10/02 13:16:29 ryoon Exp $
2# 2#
3# This Makefile fragment handles Java dependencies and make variables, 3# This Makefile fragment handles Java dependencies and make variables,
4# and is meant to be included by packages that require Java either at 4# and is meant to be included by packages that require Java either at
5# build-time or at run-time. 5# build-time or at run-time.
6# 6#
7# User-settable variables: 7# User-settable variables:
8# 8#
9# PKG_JVM_DEFAULT 9# PKG_JVM_DEFAULT
10# The JVM that should be used if nothing particular is specified. 10# The JVM that should be used if nothing particular is specified.
11# 11#
12# Possible values: kaffe openjdk7 openjdk8 12# Possible values: kaffe openjdk7 openjdk8
13# sun-jdk7 oracle-jdk8 13# sun-jdk7 oracle-jdk8
14# openjdk-bin 14# openjdk-bin openjdk11
15# Default value: (platform-dependent) 15# Default value: (platform-dependent)
16# 16#
17# Package-settable variables: 17# Package-settable variables:
18# 18#
19# USE_JAVA 19# USE_JAVA
20# When set to "yes", a build-time dependency on the JDK and 20# When set to "yes", a build-time dependency on the JDK and
21# a run-time dependency on the JRE are added. 21# a run-time dependency on the JRE are added.
22# When set to "run", a run-time dependency on the JRE is added. 22# When set to "run", a run-time dependency on the JRE is added.
23# When set to "build", a build-time dependency on the JRE is added. 23# When set to "build", a build-time dependency on the JRE is added.
24# 24#
25# Possible values: yes run build 25# Possible values: yes run build
26# Default value: yes 26# Default value: yes
27# 27#
@@ -62,54 +62,57 @@ _PKG_VARS.java= USE_JAVA USE_JAVA2 PKG_ @@ -62,54 +62,57 @@ _PKG_VARS.java= USE_JAVA USE_JAVA2 PKG_
62_SYS_VARS.java= PKG_JVM PKG_JAVA_HOME JAVA_BINPREFIX 62_SYS_VARS.java= PKG_JVM PKG_JAVA_HOME JAVA_BINPREFIX
63_SORTED_VARS.java= PKG_JVMS_ACCEPTED 63_SORTED_VARS.java= PKG_JVMS_ACCEPTED
64 64
65.include "../../mk/bsd.prefs.mk" 65.include "../../mk/bsd.prefs.mk"
66 66
67USE_JAVA?= yes 67USE_JAVA?= yes
68USE_JAVA2?= no 68USE_JAVA2?= no
69 69
70PKG_JVM_DEFAULT?= # empty 70PKG_JVM_DEFAULT?= # empty
71PKG_JVMS_ACCEPTED?= ${_PKG_JVMS} 71PKG_JVMS_ACCEPTED?= ${_PKG_JVMS}
72 72
73# This is a list of all of the JDKs that may be used. 73# This is a list of all of the JDKs that may be used.
74# 74#
75_PKG_JVMS.9= openjdk-bin 75_PKG_JVMS.9= openjdk-bin openjdk11
76_PKG_JVMS.8= ${_PKG_JVMS.9} openjdk8 oracle-jdk8 76_PKG_JVMS.8= ${_PKG_JVMS.9} openjdk8 oracle-jdk8
77_PKG_JVMS.7= ${_PKG_JVMS.8} openjdk7 sun-jdk7 77_PKG_JVMS.7= ${_PKG_JVMS.8} openjdk7 sun-jdk7
78_PKG_JVMS.6= ${_PKG_JVMS.7} jdk16 78_PKG_JVMS.6= ${_PKG_JVMS.7} jdk16
79_PKG_JVMS.1.5= ${_PKG_JVMS.6} jdk15 79_PKG_JVMS.1.5= ${_PKG_JVMS.6} jdk15
80_PKG_JVMS.1.4= ${_PKG_JVMS.1.5} 80_PKG_JVMS.1.4= ${_PKG_JVMS.1.5}
81_PKG_JVMS.yes= ${_PKG_JVMS.1.4} kaffe 81_PKG_JVMS.yes= ${_PKG_JVMS.1.4} kaffe
82_PKG_JVMS.no= ${_PKG_JVMS.yes} 82_PKG_JVMS.no= ${_PKG_JVMS.yes}
83_PKG_JVMS= ${_PKG_JVMS.${USE_JAVA2}} 83_PKG_JVMS= ${_PKG_JVMS.${USE_JAVA2}}
84 84
85# To be deprecated: if PKG_JVM is explicitly set, then use it as the 85# To be deprecated: if PKG_JVM is explicitly set, then use it as the
86# default JVM. Note that this has lower precedence than PKG_JVM_DEFAULT. 86# default JVM. Note that this has lower precedence than PKG_JVM_DEFAULT.
87# 87#
88.if defined(PKG_JVM) 88.if defined(PKG_JVM)
89. if !empty(PKG_JVM) 89. if !empty(PKG_JVM)
90_PKG_JVM_DEFAULT:= ${PKG_JVM} 90_PKG_JVM_DEFAULT:= ${PKG_JVM}
91. endif 91. endif
92.endif 92.endif
93 93
94# Set the default JVM for this platform. 94# Set the default JVM for this platform.
95# 95#
96.if !empty(PKG_JVM_DEFAULT) 96.if !empty(PKG_JVM_DEFAULT)
97_PKG_JVM_DEFAULT= ${PKG_JVM_DEFAULT} 97_PKG_JVM_DEFAULT= ${PKG_JVM_DEFAULT}
98.endif 98.endif
99.if !defined(_PKG_JVM_DEFAULT) 99.if !defined(_PKG_JVM_DEFAULT)
100. if !empty(MACHINE_PLATFORM:MNetBSD-[56789].*-i386) || \ 100. if !empty(MACHINE_PLATFORM:MNetBSD-[56].*-i386) || \
101 !empty(MACHINE_PLATFORM:MNetBSD-[56789].*-x86_64) 101 !empty(MACHINE_PLATFORM:MNetBSD-[56].*-x86_64)
102_PKG_JVM_DEFAULT?= openjdk8 102_PKG_JVM_DEFAULT?= openjdk8
 103. elif !empty(MACHINE_PLATFORM:MNetBSD-[789].*-i386) || \
 104 !empty(MACHINE_PLATFORM:MNetBSD-[789].*-x86_64)
 105_PKG_JVM_DEFAULT?= openjdk11
103. elif !empty(MACHINE_PLATFORM:MNetBSD-[789].*-sparc64) || \ 106. elif !empty(MACHINE_PLATFORM:MNetBSD-[789].*-sparc64) || \
104 !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || \ 107 !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || \
105 !empty(MACHINE_PLATFORM:MNetBSD-[789].*-earmv[67]hf) 108 !empty(MACHINE_PLATFORM:MNetBSD-[789].*-earmv[67]hf)
106_PKG_JVM_DEFAULT?= openjdk8 109_PKG_JVM_DEFAULT?= openjdk8
107. elif !empty(MACHINE_PLATFORM:MLinux-*-i[3456]86) || \ 110. elif !empty(MACHINE_PLATFORM:MLinux-*-i[3456]86) || \
108 !empty(MACHINE_PLATFORM:MLinux-*-x86_64) || \ 111 !empty(MACHINE_PLATFORM:MLinux-*-x86_64) || \
109 !empty(MACHINE_PLATFORM:MDarwin-1[2-9]*-x86_64) 112 !empty(MACHINE_PLATFORM:MDarwin-1[2-9]*-x86_64)
110_PKG_JVM_DEFAULT?= oracle-jdk8 113_PKG_JVM_DEFAULT?= oracle-jdk8
111. elif !empty(MACHINE_PLATFORM:MSunOS-5.11-i386) 114. elif !empty(MACHINE_PLATFORM:MSunOS-5.11-i386)
112_PKG_JVM_DEFAULT?= openjdk7 115_PKG_JVM_DEFAULT?= openjdk7
113. elif !empty(MACHINE_PLATFORM:MSunOS-5.11-x86_64) 116. elif !empty(MACHINE_PLATFORM:MSunOS-5.11-x86_64)
114_PKG_JVM_DEFAULT?= openjdk8 117_PKG_JVM_DEFAULT?= openjdk8
115. elif !empty(MACHINE_PLATFORM:MDragonFly-*-*) 118. elif !empty(MACHINE_PLATFORM:MDragonFly-*-*)
@@ -158,55 +161,60 @@ _ONLY_FOR_PLATFORMS.sun-jdk7= \ @@ -158,55 +161,60 @@ _ONLY_FOR_PLATFORMS.sun-jdk7= \
158 SunOS-5.11-i386 \ 161 SunOS-5.11-i386 \
159 SunOS-5.11-x86_64 162 SunOS-5.11-x86_64
160_ONLY_FOR_PLATFORMS.oracle-jdk8= \ 163_ONLY_FOR_PLATFORMS.oracle-jdk8= \
161 Darwin-9.*-i386 Darwin-9.*-x86_64 \ 164 Darwin-9.*-i386 Darwin-9.*-x86_64 \
162 Darwin-[1-9][0-9].*-i386 Darwin-[1-9][0-9].*-x86_64 \ 165 Darwin-[1-9][0-9].*-i386 Darwin-[1-9][0-9].*-x86_64 \
163 FreeBSD-6.*-i386 \ 166 FreeBSD-6.*-i386 \
164 Linux-*-i[3-6]86 \ 167 Linux-*-i[3-6]86 \
165 Linux-*-x86_64 \ 168 Linux-*-x86_64 \
166 NetBSD-[6-9]*-i386 NetBSD-[6-9]*-x86_64 \ 169 NetBSD-[6-9]*-i386 NetBSD-[6-9]*-x86_64 \
167 SunOS-5.11-x86_64 170 SunOS-5.11-x86_64
168_ONLY_FOR_PLATFORMS.openjdk-bin= \ 171_ONLY_FOR_PLATFORMS.openjdk-bin= \
169 Linux-*-x86_64 \ 172 Linux-*-x86_64 \
170 NetBSD-[6-9]*-x86_64 173 NetBSD-[6-9]*-x86_64
 174_ONLY_FOR_PLATFORMS.openjdk11= \
 175 NetBSD-[7-9]*-x86_64 \
 176 NetBSD-[7-9]*-i386
171 177
172# Set ONLY_FOR_PLATFORM based on accepted JVMs 178# Set ONLY_FOR_PLATFORM based on accepted JVMs
173.for _jvm_ in ${PKG_JVMS_ACCEPTED} 179.for _jvm_ in ${PKG_JVMS_ACCEPTED}
174ONLY_FOR_PLATFORM+= ${_ONLY_FOR_PLATFORMS.${_jvm_}} 180ONLY_FOR_PLATFORM+= ${_ONLY_FOR_PLATFORMS.${_jvm_}}
175.endfor 181.endfor
176 182
177# Set the accepted JVMs for this platform. 183# Set the accepted JVMs for this platform.
178.for _jvm_ in ${_PKG_JVMS} 184.for _jvm_ in ${_PKG_JVMS}
179. for _pattern_ in ${_ONLY_FOR_PLATFORMS.${_jvm_}} 185. for _pattern_ in ${_ONLY_FOR_PLATFORMS.${_jvm_}}
180. if !empty(MACHINE_PLATFORM:M${_pattern_}) 186. if !empty(MACHINE_PLATFORM:M${_pattern_})
181_PKG_JVMS_ACCEPTED+= ${PKG_JVMS_ACCEPTED:M${_jvm_}} 187_PKG_JVMS_ACCEPTED+= ${PKG_JVMS_ACCEPTED:M${_jvm_}}
182. endif 188. endif
183. endfor 189. endfor
184.endfor 190.endfor
185 191
186_JAVA_PKGBASE.kaffe= kaffe 192_JAVA_PKGBASE.kaffe= kaffe
187_JAVA_PKGBASE.openjdk7= openjdk7 193_JAVA_PKGBASE.openjdk7= openjdk7
188_JAVA_PKGBASE.openjdk8= openjdk8 194_JAVA_PKGBASE.openjdk8= openjdk8
189_JAVA_PKGBASE.sun-jdk7= sun-jre7 195_JAVA_PKGBASE.sun-jdk7= sun-jre7
190_JAVA_PKGBASE.oracle-jdk8= oracle-jre8 196_JAVA_PKGBASE.oracle-jdk8= oracle-jre8
191_JAVA_PKGBASE.openjdk-bin= openjdk-bin 197_JAVA_PKGBASE.openjdk-bin= openjdk-bin
 198_JAVA_PKGBASE.openjdk11= openjdk11
192 199
193# The following is copied from the respective JVM Makefiles. 200# The following is copied from the respective JVM Makefiles.
194_JAVA_NAME.kaffe= kaffe 201_JAVA_NAME.kaffe= kaffe
195_JAVA_NAME.openjdk7= openjdk7 202_JAVA_NAME.openjdk7= openjdk7
196_JAVA_NAME.openjdk8= openjdk8 203_JAVA_NAME.openjdk8= openjdk8
197_JAVA_NAME.sun-jdk7= sun7 204_JAVA_NAME.sun-jdk7= sun7
198_JAVA_NAME.oracle-jdk8= oracle8 205_JAVA_NAME.oracle-jdk8= oracle8
199_JAVA_NAME.openjdk-bin= openjdk-bin 206_JAVA_NAME.openjdk-bin= openjdk-bin
 207_JAVA_NAME.openjdk11= openjdk11
200 208
201# Mark the acceptable JVMs and check which JVM packages are installed. 209# Mark the acceptable JVMs and check which JVM packages are installed.
202.for _jvm_ in ${_PKG_JVMS_ACCEPTED} 210.for _jvm_ in ${_PKG_JVMS_ACCEPTED}
203_PKG_JVM_OK.${_jvm_}= yes 211_PKG_JVM_OK.${_jvm_}= yes
204_PKG_JVM_INSTALLED.${_jvm_}!= \ 212_PKG_JVM_INSTALLED.${_jvm_}!= \
205 if ${PKG_INFO} -qe ${_JAVA_PKGBASE.${_jvm_}}; then \ 213 if ${PKG_INFO} -qe ${_JAVA_PKGBASE.${_jvm_}}; then \
206 ${ECHO} yes; \ 214 ${ECHO} yes; \
207 else \ 215 else \
208 ${ECHO} no; \ 216 ${ECHO} no; \
209 fi 217 fi
210.endfor 218.endfor
211 219
212# Use one of the installed JVMs,... 220# Use one of the installed JVMs,...
@@ -242,33 +250,35 @@ _PKG_JVM= ${_PKG_JVM_FIRSTACCEPTED} @@ -242,33 +250,35 @@ _PKG_JVM= ${_PKG_JVM_FIRSTACCEPTED}
242# force an error 250# force an error
243PKG_FAIL_REASON+= "no acceptable JVM found" 251PKG_FAIL_REASON+= "no acceptable JVM found"
244_PKG_JVM= "none" 252_PKG_JVM= "none"
245.endif 253.endif
246 254
247BUILDLINK_API_DEPENDS.kaffe?= kaffe>=1.1.4 255BUILDLINK_API_DEPENDS.kaffe?= kaffe>=1.1.4
248BUILDLINK_API_DEPENDS.openjdk7?= openjdk7-[0-9]* 256BUILDLINK_API_DEPENDS.openjdk7?= openjdk7-[0-9]*
249BUILDLINK_API_DEPENDS.openjdk8?= openjdk8-[0-9]* 257BUILDLINK_API_DEPENDS.openjdk8?= openjdk8-[0-9]*
250BUILDLINK_API_DEPENDS.sun-jdk7?= sun-jdk7-[0-9]* 258BUILDLINK_API_DEPENDS.sun-jdk7?= sun-jdk7-[0-9]*
251BUILDLINK_API_DEPENDS.sun-jre7?= sun-jre7-[0-9]* 259BUILDLINK_API_DEPENDS.sun-jre7?= sun-jre7-[0-9]*
252BUILDLINK_API_DEPENDS.oracle-jdk8?= oracle-jdk8-[0-9]* 260BUILDLINK_API_DEPENDS.oracle-jdk8?= oracle-jdk8-[0-9]*
253BUILDLINK_API_DEPENDS.oracle-jre8?= oracle-jre8-[0-9]* 261BUILDLINK_API_DEPENDS.oracle-jre8?= oracle-jre8-[0-9]*
254BUILDLINK_API_DEPENDS.openjdk-bin?= openjdk-bin-[0-9]* 262BUILDLINK_API_DEPENDS.openjdk-bin?= openjdk-bin-[0-9]*
 263BUILDLINK_API_DEPENDS.openjdk11?= openjdk11-[0-9]*
255 264
256_JRE.kaffe= kaffe 265_JRE.kaffe= kaffe
257_JRE.openjdk7= openjdk7 266_JRE.openjdk7= openjdk7
258_JRE.openjdk8= openjdk8 267_JRE.openjdk8= openjdk8
259_JRE.sun-jdk7= sun-jre7 268_JRE.sun-jdk7= sun-jre7
260_JRE.oracle-jdk8= oracle-jre8 269_JRE.oracle-jdk8= oracle-jre8
261_JRE.openjdk-bin= openjdk-bin 270_JRE.openjdk-bin= openjdk-bin
 271_JRE.openjdk11= openjdk11
262 272
263_JAVA_BASE_CLASSES= classes.zip 273_JAVA_BASE_CLASSES= classes.zip
264 274
265.if ${_PKG_JVM} == "kaffe" 275.if ${_PKG_JVM} == "kaffe"
266_JDK_PKGSRCDIR= ../../lang/kaffe 276_JDK_PKGSRCDIR= ../../lang/kaffe
267_JRE_PKGSRCDIR= ${_JDK_PKGSRCDIR} 277_JRE_PKGSRCDIR= ${_JDK_PKGSRCDIR}
268_JAVA_HOME= ${LOCALBASE}/java/kaffe 278_JAVA_HOME= ${LOCALBASE}/java/kaffe
269.elif ${_PKG_JVM} == "openjdk7" 279.elif ${_PKG_JVM} == "openjdk7"
270_JDK_PKGSRCDIR= ../../lang/openjdk7 280_JDK_PKGSRCDIR= ../../lang/openjdk7
271_JRE_PKGSRCDIR= ${_JDK_PKGSRCDIR} 281_JRE_PKGSRCDIR= ${_JDK_PKGSRCDIR}
272_JAVA_HOME= ${LOCALBASE}/java/openjdk7 282_JAVA_HOME= ${LOCALBASE}/java/openjdk7
273.elif ${_PKG_JVM} == "openjdk8" 283.elif ${_PKG_JVM} == "openjdk8"
274_JDK_PKGSRCDIR= ../../lang/openjdk8 284_JDK_PKGSRCDIR= ../../lang/openjdk8
@@ -279,26 +289,31 @@ _JDK_PKGSRCDIR= ../../lang/sun-jdk7 @@ -279,26 +289,31 @@ _JDK_PKGSRCDIR= ../../lang/sun-jdk7
279_JRE_PKGSRCDIR= ../../lang/sun-jre7 289_JRE_PKGSRCDIR= ../../lang/sun-jre7
280_JAVA_HOME= ${LOCALBASE}/java/sun-7 290_JAVA_HOME= ${LOCALBASE}/java/sun-7
281UNLIMIT_RESOURCES+= datasize 291UNLIMIT_RESOURCES+= datasize
282.elif ${_PKG_JVM} == "oracle-jdk8" 292.elif ${_PKG_JVM} == "oracle-jdk8"
283_JDK_PKGSRCDIR= ../../lang/oracle-jdk8 293_JDK_PKGSRCDIR= ../../lang/oracle-jdk8
284_JRE_PKGSRCDIR= ../../lang/oracle-jre8 294_JRE_PKGSRCDIR= ../../lang/oracle-jre8
285_JAVA_HOME= ${LOCALBASE}/java/oracle-8 295_JAVA_HOME= ${LOCALBASE}/java/oracle-8
286UNLIMIT_RESOURCES+= datasize 296UNLIMIT_RESOURCES+= datasize
287.elif ${_PKG_JVM} == "openjdk-bin" 297.elif ${_PKG_JVM} == "openjdk-bin"
288_JDK_PKGSRCDIR= ../../lang/openjdk-bin 298_JDK_PKGSRCDIR= ../../lang/openjdk-bin
289_JRE_PKGSRCDIR= ../../lang/openjdk-bin 299_JRE_PKGSRCDIR= ../../lang/openjdk-bin
290_JAVA_HOME= ${LOCALBASE}/java/openjdk-bin 300_JAVA_HOME= ${LOCALBASE}/java/openjdk-bin
291UNLIMIT_RESOURCES+= datasize 301UNLIMIT_RESOURCES+= datasize
 302.elif ${_PKG_JVM} == "openjdk11"
 303_JDK_PKGSRCDIR= ../../lang/openjdk11
 304_JRE_PKGSRCDIR= ../../lang/openjdk11
 305_JAVA_HOME= ${LOCALBASE}/java/openjdk11
 306UNLIMIT_RESOURCES+= datasize
292.endif 307.endif
293 308
294# If we are not using Java for building, then we need a run-time dependency on 309# If we are not using Java for building, then we need a run-time dependency on
295# the JRE, otherwise, build-time dependency on the JRE. 310# the JRE, otherwise, build-time dependency on the JRE.
296.if defined(_JRE_PKGSRCDIR) 311.if defined(_JRE_PKGSRCDIR)
297. if exists(${_JRE_PKGSRCDIR}/buildlink3.mk) 312. if exists(${_JRE_PKGSRCDIR}/buildlink3.mk)
298. if !empty(USE_JAVA:M[bB][uU][iI][lL][dD]) 313. if !empty(USE_JAVA:M[bB][uU][iI][lL][dD])
299BUILDLINK_DEPMETHOD.${_JRE.${_PKG_JVM}}= build 314BUILDLINK_DEPMETHOD.${_JRE.${_PKG_JVM}}= build
300. endif 315. endif
301. include "${_JRE_PKGSRCDIR}/buildlink3.mk" 316. include "${_JRE_PKGSRCDIR}/buildlink3.mk"
302. endif 317. endif
303.endif 318.endif
304 319