Gentoo Archives: gentoo-commits

From: "Vlastimil Babka (caster)" <caster@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-java/icedtea: metadata.xml ChangeLog icedtea-6.1.9.2.ebuild
Date: Thu, 25 Nov 2010 21:22:54
Message-Id: 20101125212246.39ADE20051@flycatcher.gentoo.org
1 caster 10/11/25 21:22:46
2
3 Modified: metadata.xml ChangeLog
4 Added: icedtea-6.1.9.2.ebuild
5 Log:
6 Security version bump, bug #346799, thanks to Andrew John Hughes (gnu_andrew@××××××××××.org). Also adds webstart useflag.
7
8 (Portage version: 2.2.0_alpha4/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.5 dev-java/icedtea/metadata.xml
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/metadata.xml?rev=1.5&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/metadata.xml?rev=1.5&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/metadata.xml?r1=1.4&r2=1.5
16
17 Index: metadata.xml
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-java/icedtea/metadata.xml,v
20 retrieving revision 1.4
21 retrieving revision 1.5
22 diff -u -r1.4 -r1.5
23 --- metadata.xml 14 Nov 2010 08:16:14 -0000 1.4
24 +++ metadata.xml 25 Nov 2010 21:22:46 -0000 1.5
25 @@ -20,6 +20,7 @@
26 <flag name="nss">Enable NSS security provider support.</flag>
27 <!-- <flag name="shark">Enable Shark JIT support</flag> -->
28 <flag name="systemtap">Enable SystemTap probes in HotSpot.</flag>
29 + <flag name="webstart">Enable Web Start support (via NetX).</flag>
30 <flag name="xrender">Enable support for using XRender with the AWT libraries.</flag>
31 <flag name="zero">Enable the zero assembler port of HotSpot.</flag>
32 </use>
33
34
35
36 1.13 dev-java/icedtea/ChangeLog
37
38 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/ChangeLog?rev=1.13&view=markup
39 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/ChangeLog?rev=1.13&content-type=text/plain
40 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/ChangeLog?r1=1.12&r2=1.13
41
42 Index: ChangeLog
43 ===================================================================
44 RCS file: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v
45 retrieving revision 1.12
46 retrieving revision 1.13
47 diff -u -r1.12 -r1.13
48 --- ChangeLog 14 Nov 2010 00:54:22 -0000 1.12
49 +++ ChangeLog 25 Nov 2010 21:22:46 -0000 1.13
50 @@ -1,6 +1,13 @@
51 # ChangeLog for dev-java/icedtea
52 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
53 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v 1.12 2010/11/14 00:54:22 caster Exp $
54 +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v 1.13 2010/11/25 21:22:46 caster Exp $
55 +
56 +*icedtea-6.1.9.2 (25 Nov 2010)
57 +
58 + 25 Nov 2010; Vlastimil Babka <caster@g.o> +icedtea-6.1.9.2.ebuild,
59 + metadata.xml:
60 + Security version bump, bug #346799, thanks to Andrew John Hughes
61 + (gnu_andrew@××××××××××.org). Also adds webstart useflag.
62
63 14 Nov 2010; Vlastimil Babka <caster@g.o>
64 -files/6.1.8.0-systemtap-gcc-4.5.patch, -icedtea-6.1.8.0.ebuild,
65
66
67
68 1.1 dev-java/icedtea/icedtea-6.1.9.2.ebuild
69
70 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/icedtea-6.1.9.2.ebuild?rev=1.1&view=markup
71 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/icedtea/icedtea-6.1.9.2.ebuild?rev=1.1&content-type=text/plain
72
73 Index: icedtea-6.1.9.2.ebuild
74 ===================================================================
75 # Copyright 1999-2010 Gentoo Foundation
76 # Distributed under the terms of the GNU General Public License v2
77 # $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.9.2.ebuild,v 1.1 2010/11/25 21:22:46 caster Exp $
78 # Build written by Andrew John Hughes (gnu_andrew@××××××××××.org)
79
80 # *********************************************************
81 # * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-7.* AS WELL *
82 # *********************************************************
83
84 EAPI="2"
85
86 inherit pax-utils java-pkg-2 java-vm-2
87
88 LICENSE="Apache-1.1 Apache-2.0 GPL-1 GPL-2 GPL-2-with-linking-exception LGPL-2 MPL-1.0 MPL-1.1 public-domain W3C"
89 SLOT="6"
90 KEYWORDS="~amd64 ~x86"
91
92 DESCRIPTION="A harness to build the OpenJDK using Free Software build tools and dependencies"
93 ICEDTEA_VER="1.9.2"
94 ICEDTEA_PKG=icedtea${SLOT}-${ICEDTEA_VER}
95 OPENJDK_BUILD="20"
96 OPENJDK_DATE="21_jun_2010"
97 OPENJDK_TARBALL="openjdk-6-src-b${OPENJDK_BUILD}-${OPENJDK_DATE}.tar.gz"
98 JAXP_TARBALL="jdk6-jaxp-b20.zip"
99 JAXWS_TARBALL="jdk6-jaxws-b20.zip"
100 JAF_TARBALL="jdk6-jaf-b20.zip"
101 HOTSPOT_TARBALL="13edc857b967.tar.gz"
102 CACAO_TARBALL="e321b101a9ee.tar.bz2"
103 SRC_URI="http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz
104 http://download.java.net/openjdk/jdk6/promoted/b${OPENJDK_BUILD}/${OPENJDK_TARBALL}
105 http://icedtea.classpath.org/download/drops/${JAXWS_TARBALL}
106 http://icedtea.classpath.org/download/drops/${JAF_TARBALL}
107 http://icedtea.classpath.org/download/drops/${JAXP_TARBALL}
108 http://hg.openjdk.java.net/hsx/hsx19/master/archive/${HOTSPOT_TARBALL}
109 cacao? ( http://mips.complang.tuwien.ac.at/hg/cacao/archive/${CACAO_TARBALL} )"
110 HOMEPAGE="http://icedtea.classpath.org"
111 S=${WORKDIR}/${ICEDTEA_PKG}
112
113 # Missing options:
114 # shark - needs adding
115 IUSE="cacao debug doc examples +hs19 javascript nio2 +nsplugin +nss pulseaudio systemtap +webstart +xrender zero"
116
117 # JTReg doesn't pass at present
118 RESTRICT="test"
119
120 RDEPEND=">=net-print/cups-1.2.12
121 >=x11-libs/libX11-1.1.3
122 >=media-libs/freetype-2.3.5
123 >=media-libs/alsa-lib-1.0
124 >=x11-libs/gtk+-2.8
125 >=x11-libs/libXinerama-1.0.2
126 >=x11-libs/libXp-1.0.0
127 >=x11-libs/libXi-1.1.3
128 >=x11-libs/libXau-1.0.3
129 >=x11-libs/libXdmcp-1.0.2
130 >=x11-libs/libXtst-1.0.3
131 >=media-libs/jpeg-6b
132 >=media-libs/libpng-1.2
133 >=media-libs/giflib-4.1.6
134 >=sys-libs/zlib-1.2.3
135 x11-proto/inputproto
136 x11-proto/xineramaproto
137 nsplugin? ( >=net-libs/xulrunner-1.9.1 )
138 pulseaudio? ( >=media-sound/pulseaudio-0.9.11 )
139 javascript? ( dev-java/rhino:1.6 )
140 zero? ( virtual/libffi )
141 xrender? ( >=x11-libs/libXrender-0.9.4 )
142 systemtap? ( >=dev-util/systemtap-1 )
143 !dev-java/icedtea6
144 nss? ( >=dev-libs/nss-3.12.5-r1 )"
145
146 # Additional dependencies for building:
147 # zip: extract OpenJDK tarball, and needed by configure
148 # xalan/xerces: automatic code generation (also needed for Ant 1.8.0 to work properly)
149 # ant, ecj, jdk: required to build Java code
150 # Only ant-core-1.7.1-r2 and later contain a version of Ant that
151 # properly respects environment variables, if the build
152 # sets some environment variables.
153 # ca-certificates, perl and openssl are used for the cacerts keystore generation
154 # xext headers have two variants depending on version - bug #288855
155 DEPEND="${RDEPEND}
156 || (
157 ( >=dev-java/gcj-jdk-4.3 >=app-admin/eselect-ecj-0.5-r1 )
158 ( >=dev-java/cacao-0.99.2 >=app-admin/eselect-ecj-0.5-r1 )
159 dev-java/icedtea6-bin
160 dev-java/icedtea:${SLOT}
161 )
162 app-arch/zip
163 >=dev-java/xalan-2.7.0:0
164 >=dev-java/xerces-2.9.1:2
165 >=dev-java/ant-core-1.7.1-r2
166 dev-java/ant-nodeps
167 app-misc/ca-certificates
168 dev-lang/perl
169 dev-libs/openssl
170 || (
171 (
172 >=x11-libs/libXext-1.1.1
173 >=x11-proto/xextproto-7.1.1
174 x11-proto/xproto
175 )
176 <x11-libs/libXext-1.1.1
177 )
178 sys-apps/lsb-release"
179
180 # a bit of hack so the VM switching is triggered without causing dependency troubles
181 JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5"
182 JAVA_PKG_WANT_SOURCE="1.5"
183 JAVA_PKG_WANT_TARGET="1.5"
184
185 pkg_setup() {
186 # Shark support disabled for now - still experimental and needs sys-devel/llvm
187 # if use shark ; then
188 # if ( ! use x86 && ! use sparc && ! use ppc ) ; then
189 # eerror "The Shark JIT has known issues on 64-bit platforms. Please rebuild"
190 # errror "without the shark USE flag turned on."
191 # die "Rebuild without the shark USE flag on."
192 # fi
193 # if ( ! use zero ) ; then
194 # eerror "The use of the Shark JIT is only applicable when used with the zero assembler port.";
195 # die "Rebuild without the shark USE flag on or with the zero USE flag turned on."
196 # fi
197 # fi
198
199 # quite a hack since java-config does not provide a way for a package
200 # to limit supported VM's for building and their preferred order
201 if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then
202 einfo "Honoring user-set JAVA_PKG_FORCE_VM"
203 elif has_version "dev-java/icedtea:${SLOT}"; then
204 JAVA_PKG_FORCE_VM="icedtea6"
205 elif has_version dev-java/icedtea6; then
206 JAVA_PKG_FORCE_VM="icedtea6"
207 elif has_version dev-java/icedtea6-bin; then
208 JAVA_PKG_FORCE_VM="icedtea6-bin"
209 elif has_version dev-java/gcj-jdk; then
210 JAVA_PKG_FORCE_VM="gcj-jdk"
211 elif has_version dev-java/cacao; then
212 JAVA_PKG_FORCE_VM="cacao"
213 else
214 JAVA_PKG_FORCE_VM=""
215 # don't die just yet if merging a binpkg - bug #258423
216 DIE_IF_NOT_BINPKG=true
217 fi
218
219 # if the previous failed, don't even run java eclasses pkg_setup
220 # as it might also die when no VM is present
221 if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then
222 einfo "Forced vm ${JAVA_PKG_FORCE_VM}"
223 java-vm-2_pkg_setup
224 java-pkg-2_pkg_setup
225 fi
226
227 VMHANDLE="icedtea${SLOT}"
228 }
229
230 src_unpack() {
231 if [[ -n ${DIE_IF_NOT_BINPKG} ]]; then
232 die "Unable to find a supported VM for building"
233 fi
234 unpack ${ICEDTEA_PKG}.tar.gz
235 }
236
237 unset_vars() {
238 unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS
239 }
240
241 src_configure() {
242 local config procs rhino_jar
243 local vm=$(java-pkg_get-current-vm)
244 local vmhome="/usr/lib/jvm/${vm}"
245
246 # IcedTea6 can't be built using IcedTea7; its class files are too new
247 if [[ "${vm}" == "icedtea6" ]] || [[ "${vm}" == "icedtea6-bin" ]] ; then
248 # If we are upgrading icedtea, then we don't need to bootstrap.
249 config="${config} --with-openjdk=$(java-config -O)"
250 elif [[ "${vm}" == "gcj-jdk" || "${vm}" == "cacao" ]] ; then
251 # For other 1.5 JDKs e.g. GCJ, CACAO.
252 config="${config} --with-ecj-jar=/usr/share/eclipse-ecj/ecj.jar" \
253 config="${config} --with-gcj-home=${vmhome}"
254 else
255 eerror "IcedTea${SLOT} must be built with either a JDK based on GNU Classpath or an existing build of IcedTea${SLOT}."
256 die "Install a GNU Classpath JDK (gcj-jdk, cacao)"
257 fi
258
259 # OpenJDK-specific parallelism support.
260 procs=$(echo ${MAKEOPTS} | sed -r 's/.*-j\W*([0-9]+).*/\1/')
261 if [[ -n ${procs} ]] ; then
262 config="${config} --with-parallel-jobs=${procs}";
263 einfo "Configuring using --with-parallel-jobs=${procs}"
264 fi
265
266 if use_zero ; then
267 config="${config} --enable-zero"
268 else
269 config="${config} --disable-zero"
270 fi
271
272 if use javascript ; then
273 rhino_jar=$(java-pkg_getjar rhino:1.6 js.jar);
274 fi
275
276 if use hs19 ; then
277 config="${config} --with-hotspot-build=hs19"
278 fi
279
280 unset_vars
281
282 econf ${config} \
283 --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \
284 --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \
285 --with-jaxp-drop-zip="${DISTDIR}/${JAXP_TARBALL}" \
286 --with-jaxws-drop-zip="${DISTDIR}/${JAXWS_TARBALL}" \
287 --with-jaf-drop-zip="${DISTDIR}/${JAF_TARBALL}" \
288 --with-cacao-src-zip="${DISTDIR}/${CACAO_TARBALL}" \
289 --with-java="${vmhome}/bin/java" \
290 --with-javac="${vmhome}/bin/javac" \
291 --with-javah="${vmhome}/bin/javah" \
292 --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \
293 $(use_enable !debug optimizations) \
294 $(use_enable doc docs) \
295 $(use_enable nsplugin plugin) \
296 $(use_with javascript rhino ${rhino_jar}) \
297 $(use_enable cacao) \
298 $(use_enable pulseaudio pulse-java) \
299 $(use_enable xrender) \
300 $(use_enable systemtap) \
301 $(use_enable nio2) \
302 $(use_enable nss) \
303 $(use_enable webstart) \
304 || die "configure failed"
305 }
306
307 src_compile() {
308 # Newer versions of Gentoo's ant add
309 # an environment variable so it works properly...
310 export ANT_RESPECT_JAVA_HOME=TRUE
311 # ant -diagnostics in Ant 1.8.0 fails without these
312 # otherwise we try to load the least that's needed to avoid possible classpath collisions
313 export ANT_TASKS="xerces-2 xalan ant-nodeps"
314
315 # Paludis does not respect unset from src_configure
316 unset_vars
317 emake -j 1 || die "make failed"
318 }
319
320 src_install() {
321 local dest="${ROOT}usr/$(get_libdir)/icedtea${SLOT}"
322 local ddest="${D}/${dest}"
323 dodir "${dest}" || die
324
325 dodoc README NEWS AUTHORS THANKYOU || die
326 dosym "${ROOT}usr/share/doc/${PF}" "${ROOT}usr/share/doc/${PN}${SLOT}"
327
328 cd "${S}/openjdk.build/j2sdk-image" || die
329
330 if use doc ; then
331 # java-pkg_dohtml needed for package-list #302654
332 java-pkg_dohtml -r ../docs/* || die "Failed to install documentation"
333 fi
334
335 # doins can't handle symlinks.
336 cp -vRP bin include jre lib man "${ddest}" || die "failed to copy"
337
338 # Set PaX markings on all JDK/JRE executables to allow code-generation on
339 # the heap by the JIT compiler.
340 pax-mark m $(list-paxables "${ddest}"{,/jre}/bin/*)
341
342 dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README || die
343
344 if use examples; then
345 dodir "${dest}/share";
346 cp -vRP demo sample "${ddest}/share/" || die
347 fi
348
349 cp src.zip "${ddest}" || die
350
351 # Fix the permissions.
352 find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die
353
354 if use nsplugin; then
355 local arch=${ARCH};
356 use x86 && arch=i386;
357 install_mozilla_plugin "${dest}/jre/lib/${arch}/IcedTeaPlugin.so";
358 fi
359
360 # We need to generate keystore - bug #273306
361 einfo "Generating cacerts file from certificates in /usr/share/ca-certificates/"
362 mkdir "${T}/certgen" && cd "${T}/certgen" || die
363 cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die
364 for c in /usr/share/ca-certificates/*/*.crt; do
365 openssl x509 -text -in "${c}" >> all.crt || die
366 done
367 ./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die
368 cp -vRP cacerts "${ddest}/jre/lib/security/" || die
369 chmod 644 "${ddest}/jre/lib/security/cacerts" || die
370
371 sed -e "s/@SLOT@/${SLOT}/g" \
372 -e "s/@PV@/${ICEDTEA_VER}/g" \
373 < "${FILESDIR}/icedtea.env" > "${T}/icedtea.env"
374 set_java_env "${T}/icedtea.env"
375 }
376
377 use_zero() {
378 use zero || ( ! use amd64 && ! use x86 && ! use sparc )
379 }
380
381 pkg_postinst() {
382 # Set as default VM if none exists
383 java-vm-2_pkg_postinst
384
385 if use nsplugin; then
386 elog "The icedtea${SLOT} browser plugin (NPPlugin) can be enabled using eselect java-nsplugin"
387 elog "Note that the plugin works only in browsers based on xulrunner-1.9.1 or later"
388 elog "such as Firefox 3.5+, Chromium and perhaps some others too."
389 fi
390 }