From d84720e2db35fce292c8017e0928447568c40ec9 Mon Sep 17 00:00:00 2001 From: Vlastimil Babka Date: Mon, 3 May 2010 12:32:51 +0000 Subject: Fix building with gcc-4.5 and USE=systemtap - fixes bug #317343. Bump the 6.1.7.2-r1 to 6.7.1.3 (which is the same)for easier sync with the overlay. Package-Manager: portage-2.2_rc67/cvs/Linux x86_64 --- dev-java/icedtea/ChangeLog | 11 +- dev-java/icedtea/Manifest | 10 +- .../icedtea/files/6.1.7.3-systemtap-gcc-4.5.patch | 62 ++++ .../icedtea/files/6.1.8.0-systemtap-gcc-4.5.patch | 62 ++++ dev-java/icedtea/icedtea-6.1.7.1.ebuild | 324 -------------------- dev-java/icedtea/icedtea-6.1.7.3.ebuild | 339 +++++++++++++++++++++ dev-java/icedtea/icedtea-6.1.8.0.ebuild | 13 +- 7 files changed, 490 insertions(+), 331 deletions(-) create mode 100644 dev-java/icedtea/files/6.1.7.3-systemtap-gcc-4.5.patch create mode 100644 dev-java/icedtea/files/6.1.8.0-systemtap-gcc-4.5.patch delete mode 100644 dev-java/icedtea/icedtea-6.1.7.1.ebuild create mode 100644 dev-java/icedtea/icedtea-6.1.7.3.ebuild diff --git a/dev-java/icedtea/ChangeLog b/dev-java/icedtea/ChangeLog index 8f390f546eef..77f137077f58 100644 --- a/dev-java/icedtea/ChangeLog +++ b/dev-java/icedtea/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for dev-java/icedtea # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v 1.6 2010/04/15 13:47:56 caster Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v 1.7 2010/05/03 12:32:51 caster Exp $ + +*icedtea-6.1.7.3 (03 May 2010) + + 03 May 2010; Vlastimil Babka + +files/6.1.7.3-systemtap-gcc-4.5.patch, + +files/6.1.8.0-systemtap-gcc-4.5.patch, -icedtea-6.1.7.1.ebuild, + +icedtea-6.1.7.3.ebuild, icedtea-6.1.8.0.ebuild: + Fix building with gcc-4.5 and USE=systemtap - fixes bug #317343. Bump the + 6.1.7.2-r1 to 6.7.1.3 (which is the same)for easier sync with the overlay. 15 Apr 2010; Vlastimil Babka icedtea-6.1.8.0.ebuild: Add ant-nodeps to DEPEND since it's used in ANT_TASKS variable. Bug diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest index dacfaf7cd17f..961ea27ea06a 100644 --- a/dev-java/icedtea/Manifest +++ b/dev-java/icedtea/Manifest @@ -1,18 +1,20 @@ AUX 1.7.2-free.patch 1253 RMD160 ef6e7e2bbd26c11b4ee9f84e8384169df921c04b SHA1 1fd6963cc0728dbf5a0a90340bc7d370a058f6bb SHA256 4853311daf95a21b897a2a262bbaab74b963e5deeb6b01c5d2fd0b92cbf55779 +AUX 6.1.7.3-systemtap-gcc-4.5.patch 2141 RMD160 83020d0ad65775d29139ef6049ebe966d0cee508 SHA1 02d6e55bb4c5874322667cd0eb350dca82816176 SHA256 bddf81af424f318b1c0a5bf9c23321e381d97a646f05e012b53443f0039f9f55 +AUX 6.1.8.0-systemtap-gcc-4.5.patch 2126 RMD160 df47a4640738ce825106c3607fbaff2f4e863801 SHA1 57cb61e877e06886ff4a259cbc0372bcbf145ac1 SHA256 5a41b9657f07cc9667dbae0bd0d4b01d2afd66fef168f001835fe60cc8bb7cce AUX generate-cacerts.pl 11051 RMD160 9b874c62ffa0afe16353f1e7b32f124f1d31356f SHA1 65e55b84506ecf14711db0996eccf3cfba2fe9e3 SHA256 6ee6fb155e3fa85d0a7e9015b53ebd55948c6599d100fdb69b574b6d11f73433 AUX icedtea.env 999 RMD160 83d735b0941a9e33c4dd3f3bd3fe16e64c55f5e1 SHA1 6d8da5ad9d396d96f16f148c3a826d9e2a357d0e SHA256 85dc9543de305637739eea7b58e61865bd780aa50fd574ce19ccd95bc1013ec1 DIST 62926c7f67a3.tar.gz 8080848 RMD160 1d9a41c4efddb75181b5cc5e301be4d4d1aead56 SHA1 0cf4d7b56da4edfeab47d413d6bb1b810e347b3f SHA256 fedfee5b5eb0acf4e7c3b90f46c02318e512a67034364d90c411f2b8e3a31cc6 DIST cacao-0.99.4.tar.gz 3917411 RMD160 bde50674e07c3a1e6ed8c4a8fdc6273a2a23dd1a SHA1 d9d159f8f905a9fa53ea7ae0f50a442dbd6b5e84 SHA256 c6090c1d2ed3c60acda0076b62563598267be8dab270ce49ee1035002a2510cf -DIST icedtea6-1.7.1.tar.gz 6108991 RMD160 2c46edc9d714e4034bb21f353d94d8727f12ba6c SHA1 9e268cfd9c8e459e1868934139e3dc0b054ede2e SHA256 f8f0f4ad3df933a06d254bb38b2c2f3ecde8e02f6e0232096bf8871769ba9315 DIST icedtea6-1.7.2.tar.gz 6135812 RMD160 8d5b9f79bda2a031e2af35151b56764f6792b578 SHA1 90695d6fef48ddcf74a1c9adab31dce4d5dae9c4 SHA256 59a7be7426db31479a57c933c751a1884d600215a9f5eb73df797de7001119bc +DIST icedtea6-1.7.3.tar.gz 6135613 RMD160 31c83cd2d684e82393fd485146e01ab2e05fa06b SHA1 f3f2b13b963f4514c12d632dcad876c81ec2bc10 SHA256 855a7f1a1a7798e3c4c25281b89ee6906a53b226ac39e3153cc0336a6952ca6b DIST icedtea6-1.8.tar.gz 6068172 RMD160 7f536afa37335fc183e7bd52996ca63c5aa1db14 SHA1 8866033807100f5a141f89a21c992b357c6e88bc SHA256 6823ff87969d978fe5523c729be3074142698c89acc8cc96c05b849fde54f61b DIST jdk6-jaf-2009_10_27.zip 69593 RMD160 f1c635a23efbe88ec364aab53c2adf6eea69a5eb SHA1 92a17d19bec6dbce09cc04ad78abd0682367ba2e SHA256 fdc51476fc6bcc69ea1f099f33e84601a126bfa8b11c8fa11c25dc574345aa9f DIST jdk6-jaxp-2009_10_13.zip 5975524 RMD160 fd72e19fcbcd8a5cbbc5d0399cd2053b830f7c5e SHA1 e2c3a19a859d991a9e01124b4760cb432d6a435d SHA256 8714d55de18db48ca9da0ee986202005082f44cf4c215da8683342b70e61792b DIST jdk6-jaxws-2009_10_27.zip 5446377 RMD160 94b02aba2b08199571c4c4a05daf8ed354d840c9 SHA1 52fd35ca5fdeac0a6bd9a153397631597c407c22 SHA256 155ff3be83c980e197621a2fbf7ee34e8e0f536489351a5865cf0e52206245e2 DIST openjdk-6-src-b17-14_oct_2009.tar.gz 50029293 RMD160 eae59f50916265a4b8e8179b8a7c5eee8b0402de SHA1 096c843f674d231e9b134057339fd1f2b63f6d9d SHA256 2019a4c3d2d14620caa78d7df49fd987a041066b4631bde4fd8424033f3c1785 DIST openjdk-6-src-b18-16_feb_2010.tar.gz 44216412 RMD160 7ccb0ad2827f94dd07ebfbb554103aa2c0c2eae4 SHA1 7250fc40cd5fadc7ba9c1955cb60f05514406ca7 SHA256 778ea7b323aaa24d3c6e8fe32b8bb0f49040d9e86271859077ada9f9ee3c8ebf -EBUILD icedtea-6.1.7.1.ebuild 10912 RMD160 b3824c13995af3736b727a8603f0bfa5614b9d51 SHA1 1f6570874aa97478ec9e3da0e7243d7f391a7438 SHA256 0ee885e076ec6b47f75c7945b7644ea5b493b1e6496ac4a99b890494658dd4d1 EBUILD icedtea-6.1.7.2-r1.ebuild 10973 RMD160 65843c2e266a7f8425ee1941a11f8381650df711 SHA1 c252cf1d6bef75f9e3685cb257d85b8fa83a9bd9 SHA256 aa567f9bf8dfa45c04cc718526972118c63a377522da9fa3f4d24993f80ca17b -EBUILD icedtea-6.1.8.0.ebuild 10672 RMD160 3cf6da4a72f968d7a65a9d4cf601e308088bce87 SHA1 743cb36f4e2b70d8282f33e06c39d7065e53a240 SHA256 0c82e0818f384d1ef4463c6bd4135fcc62f3cbf28b3f0144f3b4a44f44172d98 -MISC ChangeLog 1348 RMD160 f28c16241d6fec6e74dbf96136af5c500c136f5c SHA1 e7ff70650fa3343389b36e1b4c2252413b0e8507 SHA256 42b6a890dd4fd09a15acf87ea29625d8125ba49b4487b2c5ca55909656811afe +EBUILD icedtea-6.1.7.3.ebuild 11417 RMD160 613c9a84730a50f9bdf090923aa7fe5cbb68a2d9 SHA1 ee1497a43036718de7a827fd64c7fee0a26ffb7d SHA256 181023f6174debbc15f70bc15da9fc95641b2021e970b811bba2c56e566d2980 +EBUILD icedtea-6.1.8.0.ebuild 10923 RMD160 6f7a2624be608a466988eb4c086a78cd02b9ddfd SHA1 7910962f4508f9f9a8a1f675a8468563724e713f SHA256 53c0679f9b7faad90f1377226a0fee31e781a22d4cb3b429643c0ab172c5e456 +MISC ChangeLog 1745 RMD160 7d7d49e35a65f9665067299c123110e71e5cdcbb SHA1 923027b54b91a9b0dbe4707b6ad4b7efe6428870 SHA256 c5b989bf97aa6bd03591815d194e3644578ed792bfd727793a37eead0f2fe72a MISC metadata.xml 1419 RMD160 8b303b797bbb6ee7e2878191201f62bd65ca0357 SHA1 fe602e734121eaf77b96ac722db7fe04bd417d14 SHA256 954037cf8b960faa02fc6b2b7c73e35704a9f15670303d0602d88903759f6d01 diff --git a/dev-java/icedtea/files/6.1.7.3-systemtap-gcc-4.5.patch b/dev-java/icedtea/files/6.1.7.3-systemtap-gcc-4.5.patch new file mode 100644 index 000000000000..e5004f032e31 --- /dev/null +++ b/dev-java/icedtea/files/6.1.7.3-systemtap-gcc-4.5.patch @@ -0,0 +1,62 @@ +# HG changeset patch +# User Andrew John Hughes +# Date 1272471515 -3600 +# Node ID c8d38c28900e01a04d730fc59f899ae0cd1d0779 +# Parent c30ad39537453fa171d094f3534e79a2faf16fad +PR476: Enable building SystemTap on GCC 4.5. + +2010-04-28 Andrew John Hughes + + PR icedtea/476 + * Makefile.am: + Add patch when SystemTap is enabled to support + building with GCC 4.5. + * patches/systemtap-gcc-4.5.patch: + Add cast to NULL (doesn't apply to DTrace due + to differences between SystemTap and DTrace macros). + +diff -r c30ad3953745 -r c8d38c28900e ChangeLog +--- a/ChangeLog Mon Apr 26 14:11:34 2010 +0200 ++++ b/ChangeLog Wed Apr 28 17:18:35 2010 +0100 +@@ -1,3 +1,13 @@ ++2010-04-28 Andrew John Hughes ++ ++ PR icedtea/476 ++ * Makefile.am: ++ Add patch when SystemTap is enabled to support ++ building with GCC 4.5. ++ * patches/systemtap-gcc-4.5.patch: ++ Add cast to NULL (doesn't apply to DTrace due ++ to differences between SystemTap and DTrace macros). ++ + 2010-03-31 Andrew John Hughes + + * Makefile.am: Add Ant patch. +diff -r c30ad3953745 -r c8d38c28900e Makefile.am +--- a/Makefile.am Mon Apr 26 14:11:34 2010 +0200 ++++ b/Makefile.am Wed Apr 28 17:18:35 2010 +0100 +@@ -374,7 +374,8 @@ + endif + + if ENABLE_SYSTEMTAP +-ICEDTEA_PATCHES += patches/icedtea-systemtap.patch ++ICEDTEA_PATCHES += patches/icedtea-systemtap.patch \ ++ patches/systemtap-gcc-4.5.patch + endif + + if ENABLE_NSS +diff -r c30ad3953745 -r c8d38c28900e patches/systemtap-gcc-4.5.patch +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/patches/systemtap-gcc-4.5.patch Wed Apr 28 17:18:35 2010 +0100 +@@ -0,0 +1,11 @@ ++--- openjdk.orig/hotspot/src/share/vm/prims/jni.cpp 2010-04-28 08:51:29.000000000 +0100 +++++ openjdk/hotspot/src/share/vm/prims/jni.cpp 2010-04-28 09:29:22.000000000 +0100 ++@@ -2723,7 +2723,7 @@ ++ ++ if (!directBufferSupportInitializeEnded) { ++ if (!initializeDirectBufferSupport(env, thread)) { ++- DTRACE_PROBE1(hotspot_jni, NewDirectByteBuffer__return, NULL); +++ DTRACE_PROBE1(hotspot_jni, NewDirectByteBuffer__return, (uintptr_t) NULL); ++ return NULL; ++ } ++ } diff --git a/dev-java/icedtea/files/6.1.8.0-systemtap-gcc-4.5.patch b/dev-java/icedtea/files/6.1.8.0-systemtap-gcc-4.5.patch new file mode 100644 index 000000000000..95ef9a245d96 --- /dev/null +++ b/dev-java/icedtea/files/6.1.8.0-systemtap-gcc-4.5.patch @@ -0,0 +1,62 @@ +# HG changeset patch +# User Andrew John Hughes +# Date 1272471515 -3600 +# Node ID c8d38c28900e01a04d730fc59f899ae0cd1d0779 +# Parent c30ad39537453fa171d094f3534e79a2faf16fad +PR476: Enable building SystemTap on GCC 4.5. + +2010-04-28 Andrew John Hughes + + PR icedtea/476 + * Makefile.am: + Add patch when SystemTap is enabled to support + building with GCC 4.5. + * patches/systemtap-gcc-4.5.patch: + Add cast to NULL (doesn't apply to DTrace due + to differences between SystemTap and DTrace macros). + +diff -r c30ad3953745 -r c8d38c28900e ChangeLog +--- a/ChangeLog Mon Apr 26 14:11:34 2010 +0200 ++++ b/ChangeLog Wed Apr 28 17:18:35 2010 +0100 +@@ -1,3 +1,13 @@ ++2010-04-28 Andrew John Hughes ++ ++ PR icedtea/476 ++ * Makefile.am: ++ Add patch when SystemTap is enabled to support ++ building with GCC 4.5. ++ * patches/systemtap-gcc-4.5.patch: ++ Add cast to NULL (doesn't apply to DTrace due ++ to differences between SystemTap and DTrace macros). ++ + 2010-04-12 Andrew John Hughes + + PR icedtea/373 +diff -r c30ad3953745 -r c8d38c28900e Makefile.am +--- a/Makefile.am Mon Apr 26 14:11:34 2010 +0200 ++++ b/Makefile.am Wed Apr 28 17:18:35 2010 +0100 +@@ -374,7 +374,8 @@ + endif + + if ENABLE_SYSTEMTAP +-ICEDTEA_PATCHES += patches/icedtea-systemtap.patch ++ICEDTEA_PATCHES += patches/icedtea-systemtap.patch \ ++ patches/systemtap-gcc-4.5.patch + endif + + if ENABLE_NSS +diff -r c30ad3953745 -r c8d38c28900e patches/systemtap-gcc-4.5.patch +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/patches/systemtap-gcc-4.5.patch Wed Apr 28 17:18:35 2010 +0100 +@@ -0,0 +1,11 @@ ++--- openjdk.orig/hotspot/src/share/vm/prims/jni.cpp 2010-04-28 08:51:29.000000000 +0100 +++++ openjdk/hotspot/src/share/vm/prims/jni.cpp 2010-04-28 09:29:22.000000000 +0100 ++@@ -2723,7 +2723,7 @@ ++ ++ if (!directBufferSupportInitializeEnded) { ++ if (!initializeDirectBufferSupport(env, thread)) { ++- DTRACE_PROBE1(hotspot_jni, NewDirectByteBuffer__return, NULL); +++ DTRACE_PROBE1(hotspot_jni, NewDirectByteBuffer__return, (uintptr_t) NULL); ++ return NULL; ++ } ++ } diff --git a/dev-java/icedtea/icedtea-6.1.7.1.ebuild b/dev-java/icedtea/icedtea-6.1.7.1.ebuild deleted file mode 100644 index 3365af2c89b0..000000000000 --- a/dev-java/icedtea/icedtea-6.1.7.1.ebuild +++ /dev/null @@ -1,324 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.7.1.ebuild,v 1.1 2010/03/04 23:20:59 caster Exp $ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-7.* AS WELL * -# ********************************************************* - -EAPI="2" - -inherit pax-utils java-pkg-2 java-vm-2 - -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" -SLOT="6" -KEYWORDS="~amd64 ~x86" - -DESCRIPTION="A harness to build the OpenJDK using Free Software build tools and dependencies" -ICEDTEA_VER="1.7.1" -ICEDTEA_PKG=icedtea${SLOT}-${ICEDTEA_VER} -OPENJDK_BUILD="17" -OPENJDK_DATE="14_oct_2009" -OPENJDK_TARBALL="openjdk-6-src-b${OPENJDK_BUILD}-${OPENJDK_DATE}.tar.gz" -HOTSPOT_TARBALL="62926c7f67a3.tar.gz" -CACAO_TARBALL="cacao-0.99.4.tar.gz" -SRC_URI="http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz - http://download.java.net/openjdk/jdk6/promoted/b${OPENJDK_BUILD}/${OPENJDK_TARBALL} - http://hg.openjdk.java.net/hsx/hsx16/master/archive/${HOTSPOT_TARBALL} - cacao? ( http://www.complang.tuwien.ac.at/cacaojvm/download/cacao-0.99.4/${CACAO_TARBALL} )" -HOMEPAGE="http://icedtea.classpath.org" -S=${WORKDIR}/${ICEDTEA_PKG} - -# Missing options: -# shark - still experimental, requires llvm which is not yet packaged -# visualvm - requries netbeans which would cause major bootstrap issues -IUSE="cacao debug doc examples +hs16 javascript nio2 +npplugin nsplugin +nss pulseaudio systemtap +xrender zero" - -# JTReg doesn't pass at present -RESTRICT="test" - -RDEPEND=">=net-print/cups-1.2.12 - >=x11-libs/libX11-1.1.3 - >=media-libs/freetype-2.3.5 - >=media-libs/alsa-lib-1.0 - >=x11-libs/gtk+-2.8 - >=x11-libs/libXinerama-1.0.2 - >=x11-libs/libXp-1.0.0 - >=x11-libs/libXi-1.1.3 - >=x11-libs/libXau-1.0.3 - >=x11-libs/libXdmcp-1.0.2 - >=x11-libs/libXtst-1.0.3 - >=media-libs/jpeg-6b - >=media-libs/libpng-1.2 - >=media-libs/giflib-4.1.6 - >=sys-libs/zlib-1.2.3 - x11-proto/inputproto - x11-proto/xineramaproto - nsplugin? ( >=net-libs/xulrunner-1.9 ) - pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) - javascript? ( dev-java/rhino:1.6 ) - zero? ( virtual/libffi ) - xrender? ( >=x11-libs/libXrender-0.9.4 ) - systemtap? ( >=dev-util/systemtap-1 ) - !dev-java/icedtea6 - nss? ( >=dev-libs/nss-3.12.5-r1 )" - -# Additional dependencies for building: -# zip: extract OpenJDK tarball, and needed by configure -# xalan/xerces: automatic code generation (also needed for Ant 1.8.0 to work properly) -# ant, ecj, jdk: required to build Java code -# Only ant-core-1.7.1-r2 and later contain a version of Ant that -# properly respects environment variables, if the build -# sets some environment variables. -# ca-certificates, perl and openssl are used for the cacerts keystore generation -# xext headers have two variants depending on version - bug #288855 -DEPEND="${RDEPEND} - || ( - dev-java/icedtea6-bin - dev-java/icedtea:${SLOT} - ) - >=virtual/jdk-1.5 - app-arch/zip - >=dev-java/xalan-2.7.0:0 - >=dev-java/xerces-2.9.1:2 - >=dev-java/ant-core-1.7.1-r2 - app-misc/ca-certificates - dev-lang/perl - dev-libs/openssl - || ( - ( - >=x11-libs/libXext-1.1.1 - >=x11-proto/xextproto-7.1.1 - x11-proto/xproto - ) - =net-libs/xulrunner-1.9.2"; then - eerror "The old plugin will not work with xulrunner >= 1.9.2 / Firefox >= 3.6." - die "Rebuild with the npplugin USE flag enabled." - fi - - # quite a hack since java-config does not provide a way for a package - # to limit supported VM's for building and their preferred order - if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then - einfo "Honoring user-set JAVA_PKG_FORCE_VM" - elif has_version "dev-java/icedtea:${SLOT}"; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version dev-java/icedtea6; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version dev-java/icedtea6-bin; then - JAVA_PKG_FORCE_VM="icedtea6-bin" - elif has_version dev-java/gcj-jdk; then - JAVA_PKG_FORCE_VM="gcj-jdk" - elif has_version dev-java/cacao; then - JAVA_PKG_FORCE_VM="cacao" - else - JAVA_PKG_FORCE_VM="" - # don't die just yet if merging a binpkg - bug #258423 - DIE_IF_NOT_BINPKG=true - fi - - # if the previous failed, don't even run java eclasses pkg_setup - # as it might also die when no VM is present - if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then - einfo "Forced vm ${JAVA_PKG_FORCE_VM}" - java-vm-2_pkg_setup - java-pkg-2_pkg_setup - fi - - VMHANDLE="icedtea${SLOT}" -} - -src_unpack() { - if [[ -n ${DIE_IF_NOT_BINPKG} ]]; then - die "Unable to find a supported VM for building" - fi - unpack ${ICEDTEA_PKG}.tar.gz -} - -unset_vars() { - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS -} - -src_configure() { - local config procs rhino_jar - local vm=$(java-pkg_get-current-vm) - local vmhome="/usr/lib/jvm/${vm}" - - # IcedTea6 can't be built using IcedTea7; its class files are too new - if [[ "${vm}" == "icedtea6" ]] || [[ "${vm}" == "icedtea6-bin" ]] ; then - # If we are upgrading icedtea, then we don't need to bootstrap. - config="${config} --with-openjdk=$(java-config -O)" - elif [[ "${vm}" == "gcj-jdk" || "${vm}" == "cacao" ]] ; then - # For other 1.5 JDKs e.g. GCJ, CACAO. - config="${config} --with-ecj-jar=$(java-pkg_getjar --build-only eclipse-ecj:3.3 ecj.jar)" \ - config="${config} --with-gcj-home=${vmhome}" - else - eerror "IcedTea${SLOT} must be built with either a JDK based on GNU Classpath or an existing build of IcedTea${SLOT}." - die "Install a GNU Classpath JDK (gcj-jdk, cacao)" - fi - - # OpenJDK-specific parallelism support. - procs=$(echo ${MAKEOPTS} | sed -r 's/.*-j\W*([0-9]+).*/\1/') - if [[ -n ${procs} ]] ; then - config="${config} --with-parallel-jobs=${procs}"; - einfo "Configuring using --with-parallel-jobs=${procs}" - fi - - if use_zero ; then - config="${config} --enable-zero" - else - config="${config} --disable-zero" - fi - - if use javascript ; then - rhino_jar=$(java-pkg_getjar rhino:1.6 js.jar); - fi - - if use nsplugin && use npplugin ; then - config="${config} --enable-npplugin" - fi - - if use hs16 ; then - config="${config} --with-hotspot-build=hs16" - fi - - unset_vars - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ - --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \ - --with-cacao-src-zip="${DISTDIR}/${CACAO_TARBALL}" \ - --with-java="${vmhome}/bin/java" \ - --with-javac="${vmhome}/bin/javac" \ - --with-javah="${vmhome}/bin/javah" \ - --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ - $(use_enable !debug optimizations) \ - $(use_enable doc docs) \ - $(use_enable nsplugin plugin) \ - $(use_with javascript rhino ${rhino_jar}) \ - $(use_enable cacao) \ - $(use_enable pulseaudio pulse-java) \ - $(use_enable xrender) \ - $(use_enable systemtap) \ - $(use_enable nio2) \ - $(use_enable nss) \ - || die "configure failed" -} - -src_compile() { - # Newer versions of Gentoo's ant add - # an environment variable so it works properly... - export ANT_RESPECT_JAVA_HOME=TRUE - # ant -diagnostics in Ant 1.8.0 fails without these - # otherwise we try to load the least that's needed to avoid possible classpath collisions - export ANT_TASKS="xerces-2 xalan" - - # Paludis does not respect unset from src_configure - unset_vars - emake -j 1 || die "make failed" -} - -src_install() { - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${D}/${dest}" - dodir "${dest}" || die - - local arch=${ARCH} - use x86 && arch=i586 - - dodoc README NEWS AUTHORS THANKYOU || die - - cd "${S}/openjdk/build/linux-${arch}/j2sdk-image" || die - - if use doc ; then - # java-pkg_dohtml needed for package-list #302654 - java-pkg_dohtml -r ../docs/* || die "Failed to install documentation" - fi - - # doins can't handle symlinks. - cp -vRP bin include jre lib man "${ddest}" || die "failed to copy" - - # Set PaX markings on all JDK/JRE executables to allow code-generation on - # the heap by the JIT compiler. - pax-mark m $(list-paxables "${ddest}"{,/jre}/bin/*) - - dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README || die - - if use examples; then - dodir "${dest}/share"; - cp -vRP demo sample "${ddest}/share/" || die - fi - - cp src.zip "${ddest}" || die - - # Fix the permissions. - find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die - - if use nsplugin; then - use x86 && arch=i386; - if use npplugin; then - install_mozilla_plugin "${dest}/jre/lib/${arch}/IcedTeaNPPlugin.so"; - else - install_mozilla_plugin "${dest}/jre/lib/${arch}/IcedTeaPlugin.so"; - fi - fi - - # We need to generate keystore - bug #273306 - einfo "Generating cacerts file from certificates in /usr/share/ca-certificates/" - mkdir "${T}/certgen" && cd "${T}/certgen" || die - cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die - for c in /usr/share/ca-certificates/*/*.crt; do - openssl x509 -text -in "${c}" >> all.crt || die - done - ./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die - cp -vRP cacerts "${ddest}/jre/lib/security/" || die - chmod 644 "${ddest}/jre/lib/security/cacerts" || die - - sed -e "s/@SLOT@/${SLOT}/g" \ - -e "s/@PV@/${ICEDTEA_VER}/g" \ - < "${FILESDIR}/icedtea.env" > "${T}/icedtea.env" - set_java_env "${T}/icedtea.env" -} - -use_zero() { - use zero || ( ! use amd64 && ! use x86 && ! use sparc ) -} - -pkg_postinst() { - # Set as default VM if none exists - java-vm-2_pkg_postinst - - if use nsplugin; then - elog "The icedtea${SLOT} browser plugin can be enabled using eselect java-nsplugin" - if use npplugin; then - elog "Note that the IcedTeaNPPlugin works only in browsers based on xulrunner-1.9.1 or later" - elog "such as Firefox 3.5+, Chromium and perhaps some others too, and it is considered" - elog "alpha quality by upstream. The older plugin can be built with USE=\"-nnplugin\"" - elog "but it does not support xulrunner-1.9.2 (Firefox 3.6) or Chromium." - else - elog "Note that the IcedTeaPlugin works only in browsers based on xulrunner-1.9.0 or 1.9.1" - elog "such as Firefox 3 or 3.5, Epiphany 2.24 and not in older versions!" - elog "Also note that you need to recompile icedtea${SLOT} if you upgrade" - elog "from xulrunner-1.9.0 to 1.9.1." - elog "To support xulrunner-1.9.2 (Firefox 3.6) and Chromium, enable USE=npplugin" - fi - fi -} diff --git a/dev-java/icedtea/icedtea-6.1.7.3.ebuild b/dev-java/icedtea/icedtea-6.1.7.3.ebuild new file mode 100644 index 000000000000..d27c275105b5 --- /dev/null +++ b/dev-java/icedtea/icedtea-6.1.7.3.ebuild @@ -0,0 +1,339 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.7.3.ebuild,v 1.1 2010/05/03 12:32:51 caster Exp $ +# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) + +# ********************************************************* +# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-7.* AS WELL * +# ********************************************************* + +EAPI="2" + +inherit autotools pax-utils java-pkg-2 java-vm-2 + +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" +SLOT="6" +KEYWORDS="~amd64 ~x86" + +DESCRIPTION="A harness to build the OpenJDK using Free Software build tools and dependencies" +ICEDTEA_VER="1.7.3" +ICEDTEA_PKG=icedtea${SLOT}-${ICEDTEA_VER} +OPENJDK_BUILD="17" +OPENJDK_DATE="14_oct_2009" +OPENJDK_TARBALL="openjdk-6-src-b${OPENJDK_BUILD}-${OPENJDK_DATE}.tar.gz" +HOTSPOT_TARBALL="62926c7f67a3.tar.gz" +CACAO_TARBALL="cacao-0.99.4.tar.gz" +SRC_URI="http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz + http://download.java.net/openjdk/jdk6/promoted/b${OPENJDK_BUILD}/${OPENJDK_TARBALL} + http://hg.openjdk.java.net/hsx/hsx16/master/archive/${HOTSPOT_TARBALL} + cacao? ( http://www.complang.tuwien.ac.at/cacaojvm/download/cacao-0.99.4/${CACAO_TARBALL} )" +HOMEPAGE="http://icedtea.classpath.org" +S=${WORKDIR}/${ICEDTEA_PKG} + +# Missing options: +# shark - still experimental, requires llvm which is not yet packaged +# visualvm - requries netbeans which would cause major bootstrap issues +IUSE="cacao debug doc examples +hs16 javascript nio2 +npplugin nsplugin +nss pulseaudio systemtap +xrender zero" + +# JTReg doesn't pass at present +RESTRICT="test" + +RDEPEND=">=net-print/cups-1.2.12 + >=x11-libs/libX11-1.1.3 + >=media-libs/freetype-2.3.5 + >=media-libs/alsa-lib-1.0 + >=x11-libs/gtk+-2.8 + >=x11-libs/libXinerama-1.0.2 + >=x11-libs/libXp-1.0.0 + >=x11-libs/libXi-1.1.3 + >=x11-libs/libXau-1.0.3 + >=x11-libs/libXdmcp-1.0.2 + >=x11-libs/libXtst-1.0.3 + >=media-libs/jpeg-6b + >=media-libs/libpng-1.2 + >=media-libs/giflib-4.1.6 + >=sys-libs/zlib-1.2.3 + x11-proto/inputproto + x11-proto/xineramaproto + nsplugin? ( >=net-libs/xulrunner-1.9 ) + pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) + javascript? ( dev-java/rhino:1.6 ) + zero? ( virtual/libffi ) + xrender? ( >=x11-libs/libXrender-0.9.4 ) + systemtap? ( >=dev-util/systemtap-1 ) + !dev-java/icedtea6 + nss? ( >=dev-libs/nss-3.12.5-r1 )" + +# Additional dependencies for building: +# zip: extract OpenJDK tarball, and needed by configure +# xalan/xerces: automatic code generation (also needed for Ant 1.8.0 to work properly) +# ant, ecj, jdk: required to build Java code +# Only ant-core-1.7.1-r2 and later contain a version of Ant that +# properly respects environment variables, if the build +# sets some environment variables. +# ca-certificates, perl and openssl are used for the cacerts keystore generation +# xext headers have two variants depending on version - bug #288855 +DEPEND="${RDEPEND} + || ( + ( >=dev-java/gcj-jdk-4.3 =app-admin/eselect-ecj-0.5-r1 ) + ( >=dev-java/cacao-0.99.2 =app-admin/eselect-ecj-0.5-r1 ) + dev-java/icedtea6-bin + dev-java/icedtea:${SLOT} + ) + app-arch/zip + >=dev-java/xalan-2.7.0:0 + >=dev-java/xerces-2.9.1:2 + >=dev-java/ant-core-1.7.1-r2 + app-misc/ca-certificates + dev-lang/perl + dev-libs/openssl + || ( + ( + >=x11-libs/libXext-1.1.1 + >=x11-proto/xextproto-7.1.1 + x11-proto/xproto + ) + =net-libs/xulrunner-1.9.2"; then + eerror "The old plugin will not work with xulrunner >= 1.9.2 / Firefox >= 3.6." + die "Rebuild with the npplugin USE flag enabled." + fi + + # quite a hack since java-config does not provide a way for a package + # to limit supported VM's for building and their preferred order + if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then + einfo "Honoring user-set JAVA_PKG_FORCE_VM" + elif has_version "dev-java/icedtea:${SLOT}"; then + JAVA_PKG_FORCE_VM="icedtea6" + elif has_version dev-java/icedtea6; then + JAVA_PKG_FORCE_VM="icedtea6" + elif has_version dev-java/icedtea6-bin; then + JAVA_PKG_FORCE_VM="icedtea6-bin" + elif has_version dev-java/gcj-jdk; then + JAVA_PKG_FORCE_VM="gcj-jdk" + elif has_version dev-java/cacao; then + JAVA_PKG_FORCE_VM="cacao" + else + JAVA_PKG_FORCE_VM="" + # don't die just yet if merging a binpkg - bug #258423 + DIE_IF_NOT_BINPKG=true + fi + + # if the previous failed, don't even run java eclasses pkg_setup + # as it might also die when no VM is present + if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then + einfo "Forced vm ${JAVA_PKG_FORCE_VM}" + java-vm-2_pkg_setup + java-pkg-2_pkg_setup + fi + + VMHANDLE="icedtea${SLOT}" +} + +src_unpack() { + if [[ -n ${DIE_IF_NOT_BINPKG} ]]; then + die "Unable to find a supported VM for building" + fi + unpack ${ICEDTEA_PKG}.tar.gz +} + +src_prepare() { + # Fix build with SystemTap + gcc 4.5 + # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=476 + if use systemtap; then + epatch "${FILESDIR}/${PV}-systemtap-gcc-4.5.patch" + eautoreconf || die "eautoreconf failed" + fi +} + +unset_vars() { + unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS +} + +src_configure() { + local config procs rhino_jar + local vm=$(java-pkg_get-current-vm) + local vmhome="/usr/lib/jvm/${vm}" + + # IcedTea6 can't be built using IcedTea7; its class files are too new + if [[ "${vm}" == "icedtea6" ]] || [[ "${vm}" == "icedtea6-bin" ]] ; then + # If we are upgrading icedtea, then we don't need to bootstrap. + config="${config} --with-openjdk=$(java-config -O)" + elif [[ "${vm}" == "gcj-jdk" || "${vm}" == "cacao" ]] ; then + # For other 1.5 JDKs e.g. GCJ, CACAO. + config="${config} --with-ecj-jar=/usr/share/eclipse-ecj/ecj.jar" \ + config="${config} --with-gcj-home=${vmhome}" + else + eerror "IcedTea${SLOT} must be built with either a JDK based on GNU Classpath or an existing build of IcedTea${SLOT}." + die "Install a GNU Classpath JDK (gcj-jdk, cacao)" + fi + + # OpenJDK-specific parallelism support. + procs=$(echo ${MAKEOPTS} | sed -r 's/.*-j\W*([0-9]+).*/\1/') + if [[ -n ${procs} ]] ; then + config="${config} --with-parallel-jobs=${procs}"; + einfo "Configuring using --with-parallel-jobs=${procs}" + fi + + if use_zero ; then + config="${config} --enable-zero" + else + config="${config} --disable-zero" + fi + + if use javascript ; then + rhino_jar=$(java-pkg_getjar rhino:1.6 js.jar); + fi + + if use nsplugin && use npplugin ; then + config="${config} --enable-npplugin" + fi + + if use hs16 ; then + config="${config} --with-hotspot-build=hs16" + fi + + unset_vars + + econf ${config} \ + --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ + --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \ + --with-cacao-src-zip="${DISTDIR}/${CACAO_TARBALL}" \ + --with-java="${vmhome}/bin/java" \ + --with-javac="${vmhome}/bin/javac" \ + --with-javah="${vmhome}/bin/javah" \ + --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ + $(use_enable !debug optimizations) \ + $(use_enable doc docs) \ + $(use_enable nsplugin plugin) \ + $(use_with javascript rhino ${rhino_jar}) \ + $(use_enable cacao) \ + $(use_enable pulseaudio pulse-java) \ + $(use_enable xrender) \ + $(use_enable systemtap) \ + $(use_enable nio2) \ + $(use_enable nss) \ + || die "configure failed" +} + +src_compile() { + # Newer versions of Gentoo's ant add + # an environment variable so it works properly... + export ANT_RESPECT_JAVA_HOME=TRUE + # ant -diagnostics in Ant 1.8.0 fails without these + # otherwise we try to load the least that's needed to avoid possible classpath collisions + export ANT_TASKS="xerces-2 xalan" + + # Paludis does not respect unset from src_configure + unset_vars + emake -j 1 || die "make failed" +} + +src_install() { + local dest="/usr/$(get_libdir)/icedtea${SLOT}" + local ddest="${D}/${dest}" + dodir "${dest}" || die + + local arch=${ARCH} + use x86 && arch=i586 + + dodoc README NEWS AUTHORS THANKYOU || die + + cd "${S}/openjdk/build/linux-${arch}/j2sdk-image" || die + + if use doc ; then + # java-pkg_dohtml needed for package-list #302654 + java-pkg_dohtml -r ../docs/* || die "Failed to install documentation" + fi + + # doins can't handle symlinks. + cp -vRP bin include jre lib man "${ddest}" || die "failed to copy" + + # Set PaX markings on all JDK/JRE executables to allow code-generation on + # the heap by the JIT compiler. + pax-mark m $(list-paxables "${ddest}"{,/jre}/bin/*) + + dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README || die + + if use examples; then + dodir "${dest}/share"; + cp -vRP demo sample "${ddest}/share/" || die + fi + + cp src.zip "${ddest}" || die + + # Fix the permissions. + find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die + + if use nsplugin; then + use x86 && arch=i386; + if use npplugin; then + install_mozilla_plugin "${dest}/jre/lib/${arch}/IcedTeaNPPlugin.so"; + else + install_mozilla_plugin "${dest}/jre/lib/${arch}/IcedTeaPlugin.so"; + fi + fi + + # We need to generate keystore - bug #273306 + einfo "Generating cacerts file from certificates in /usr/share/ca-certificates/" + mkdir "${T}/certgen" && cd "${T}/certgen" || die + cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die + for c in /usr/share/ca-certificates/*/*.crt; do + openssl x509 -text -in "${c}" >> all.crt || die + done + ./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die + cp -vRP cacerts "${ddest}/jre/lib/security/" || die + chmod 644 "${ddest}/jre/lib/security/cacerts" || die + + sed -e "s/@SLOT@/${SLOT}/g" \ + -e "s/@PV@/${ICEDTEA_VER}/g" \ + < "${FILESDIR}/icedtea.env" > "${T}/icedtea.env" + set_java_env "${T}/icedtea.env" +} + +use_zero() { + use zero || ( ! use amd64 && ! use x86 && ! use sparc ) +} + +pkg_postinst() { + # Set as default VM if none exists + java-vm-2_pkg_postinst + + if use nsplugin; then + elog "The icedtea${SLOT} browser plugin can be enabled using eselect java-nsplugin" + if use npplugin; then + elog "Note that the IcedTeaNPPlugin works only in browsers based on xulrunner-1.9.1 or later" + elog "such as Firefox 3.5+, Chromium and perhaps some others too, and it is considered" + elog "alpha quality by upstream. The older plugin can be built with USE=\"-nnplugin\"" + elog "but it does not support xulrunner-1.9.2 (Firefox 3.6) or Chromium." + else + elog "Note that the IcedTeaPlugin works only in browsers based on xulrunner-1.9.0 or 1.9.1" + elog "such as Firefox 3 or 3.5, Epiphany 2.24 and not in older versions!" + elog "Also note that you need to recompile icedtea${SLOT} if you upgrade" + elog "from xulrunner-1.9.0 to 1.9.1." + elog "To support xulrunner-1.9.2 (Firefox 3.6) and Chromium, enable USE=npplugin" + fi + fi +} diff --git a/dev-java/icedtea/icedtea-6.1.8.0.ebuild b/dev-java/icedtea/icedtea-6.1.8.0.ebuild index d42138864a4d..2555f0b1b32a 100644 --- a/dev-java/icedtea/icedtea-6.1.8.0.ebuild +++ b/dev-java/icedtea/icedtea-6.1.8.0.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.8.0.ebuild,v 1.2 2010/04/15 13:47:56 caster Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.8.0.ebuild,v 1.3 2010/05/03 12:32:51 caster Exp $ # Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) # ********************************************************* @@ -9,7 +9,7 @@ EAPI="2" -inherit pax-utils java-pkg-2 java-vm-2 +inherit autotools pax-utils java-pkg-2 java-vm-2 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" SLOT="6" @@ -161,6 +161,15 @@ src_unpack() { unpack ${ICEDTEA_PKG}.tar.gz } +src_prepare() { + # Fix build with SystemTap + gcc 4.5 + # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=476 + if use systemtap; then + epatch "${FILESDIR}/${PV}-systemtap-gcc-4.5.patch" + eautoreconf || die "eautoreconf failed" + fi +} + unset_vars() { unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS } -- cgit v1.2.3-65-gdbad