diff options
author | Ralph Sennhauser <sera@gentoo.org> | 2012-03-29 19:39:13 +0000 |
---|---|---|
committer | Ralph Sennhauser <sera@gentoo.org> | 2012-03-29 19:39:13 +0000 |
commit | 680e7c27cd9175b7667e1af9c71c40ff7ab2b66c (patch) | |
tree | 4a213b4a07732433ea302c4fd2eb657e760ca1c6 /dev-java/icedtea | |
parent | Add upstream patch for builing cacao on ppc(64). #403159 (diff) | |
download | gentoo-2-680e7c27cd9175b7667e1af9c71c40ff7ab2b66c.tar.gz gentoo-2-680e7c27cd9175b7667e1af9c71c40ff7ab2b66c.tar.bz2 gentoo-2-680e7c27cd9175b7667e1af9c71c40ff7ab2b66c.zip |
remove vulnerable. #404095
(Portage version: 2.1.10.51/cvs/Linux x86_64)
Diffstat (limited to 'dev-java/icedtea')
-rw-r--r-- | dev-java/icedtea/ChangeLog | 7 | ||||
-rw-r--r-- | dev-java/icedtea/icedtea-6.1.10.5.ebuild | 344 | ||||
-rw-r--r-- | dev-java/icedtea/icedtea-6.1.11.ebuild | 335 | ||||
-rw-r--r-- | dev-java/icedtea/icedtea-7.2.0-r1.ebuild | 314 | ||||
-rw-r--r-- | dev-java/icedtea/icedtea-7.2.0-r2.ebuild | 338 | ||||
-rw-r--r-- | dev-java/icedtea/icedtea-7.2.0-r3.ebuild | 405 | ||||
-rw-r--r-- | dev-java/icedtea/metadata.xml | 1 |
7 files changed, 6 insertions, 1738 deletions
diff --git a/dev-java/icedtea/ChangeLog b/dev-java/icedtea/ChangeLog index 3c41f085bf2b..5e39d69e542f 100644 --- a/dev-java/icedtea/ChangeLog +++ b/dev-java/icedtea/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for dev-java/icedtea # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v 1.68 2012/03/29 19:26:56 sera Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/ChangeLog,v 1.69 2012/03/29 19:39:13 sera Exp $ + + 29 Mar 2012; Ralph Sennhauser <sera@gentoo.org> -icedtea-6.1.10.5.ebuild, + -icedtea-6.1.11.ebuild, -icedtea-7.2.0-r1.ebuild, -icedtea-7.2.0-r2.ebuild, + -icedtea-7.2.0-r3.ebuild: + remove vulnerable. #404095 29 Mar 2012; Ralph Sennhauser <sera@gentoo.org> icedtea-6.1.11.1.ebuild, +files/icedtea-6.1.11.1-cacao_jvm.cfg.patch: diff --git a/dev-java/icedtea/icedtea-6.1.10.5.ebuild b/dev-java/icedtea/icedtea-6.1.10.5.ebuild deleted file mode 100644 index a42c1539b50e..000000000000 --- a/dev-java/icedtea/icedtea-6.1.10.5.ebuild +++ /dev/null @@ -1,344 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.10.5.ebuild,v 1.3 2012/02/08 13:09:17 sera Exp $ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-7.* AS WELL * -# ********************************************************* - -EAPI="4" - -inherit autotools java-pkg-2 java-vm-2 pax-utils prefix versionator virtualx - -ICEDTEA_PKG=${PN}$(replace_version_separator 1 -) -OPENJDK_BUILD="22" -OPENJDK_DATE="28_feb_2011" -OPENJDK_TARBALL="openjdk-6-src-b${OPENJDK_BUILD}-${OPENJDK_DATE}.tar.gz" -JAXP_TARBALL="jaxp144_01.zip" -JAXWS_TARBALL="jdk6-jaxws-b20.zip" -JAF_TARBALL="jdk6-jaf-b20.zip" -HOTSPOT_TARBALL="f0f676c5a2c6.tar.gz" -CACAO_TARBALL="c7bf150bfa46.tar.gz" # 17 Mar 2011 - -DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" -HOMEPAGE="http://icedtea.classpath.org" -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://icedtea.classpath.org/download/drops/${JAXWS_TARBALL} - http://icedtea.classpath.org/download/drops/${JAF_TARBALL} - http://icedtea.classpath.org/download/drops/${JAXP_TARBALL} - hs20? ( http://hg.openjdk.java.net/hsx/hsx20/master/archive/${HOTSPOT_TARBALL} ) - !amd64? ( !sparc? ( !x86? ( - http://icedtea.classpath.org/download/drops/cacao/${CACAO_TARBALL} - ) ) )" - -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 ~ppc ~ppc64 ~x86" - -IUSE="+X +alsa cjk +cups debug doc examples +hs20 javascript +jbootstrap +nsplugin - +nss pax_kernel pulseaudio +source systemtap test +webstart" - -# Ideally the following were optional at build time. -ALSA_COMMON_DEP=" - >=media-libs/alsa-lib-1.0" -CUPS_COMMON_DEP=" - >=net-print/cups-1.2.12" -X_COMMON_DEP=" - dev-libs/glib - >=media-libs/freetype-2.3.5 - >=x11-libs/gtk+-2.8:2 - >=x11-libs/libX11-1.1.3 - >=x11-libs/libXext-1.1.1 - >=x11-libs/libXi-1.1.3 - >=x11-libs/libXrender-0.9.4 - >=x11-libs/libXtst-1.0.3" -X_DEPEND=" - >=x11-libs/libXau-1.0.3 - >=x11-libs/libXdmcp-1.0.2 - >=x11-libs/libXinerama-1.0.2 - >=x11-libs/libXp-1.0.0 - x11-proto/inputproto - >=x11-proto/xextproto-7.1.1 - x11-proto/xineramaproto - x11-proto/xproto" - -COMMON_DEP=" - >=media-libs/giflib-4.1.6 - >=media-libs/libpng-1.2 - >=sys-libs/zlib-1.2.3 - virtual/jpeg - javascript? ( dev-java/rhino:1.6 ) - nss? ( >=dev-libs/nss-3.12.5-r1 ) - pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) - systemtap? ( >=dev-util/systemtap-1 )" - -# media-fonts/lklug needs ppc ppc64 keywords -RDEPEND="${COMMON_DEP} - !dev-java/icedtea6 - X? ( - ${X_COMMON_DEP} - media-fonts/dejavu - cjk? ( - media-fonts/arphicfonts - media-fonts/baekmuk-fonts - !ppc? ( !ppc64? ( media-fonts/lklug ) ) - media-fonts/lohit-fonts - media-fonts/sazanami - ) - ) - alsa? ( ${ALSA_COMMON_DEP} ) - cups? ( ${CUPS_COMMON_DEP} )" - -# Only ant-core-1.7.1-r2 and later properly respect environment variables. -# xalan/xerces: automatic code generation (also needed for Ant 1.8.0 to work properly) -# ca-certificates, perl and openssl are used for the cacerts keystore generation -# xext headers have two variants depending on version - bug #288855 -# !eclipse-ecj-3.7 - bug #392587 -# autoconf - as long as we use eautoreconf, version restrictions for bug #294918 -DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} - || ( - >=dev-java/gcj-jdk-4.3 - dev-java/icedtea-bin:6 - dev-java/icedtea:6 - ) - app-arch/cpio - app-arch/unzip - app-arch/zip - app-misc/ca-certificates - >=dev-java/ant-core-1.7.1-r2 - dev-java/ant-nodeps - >=dev-java/xalan-2.7.0:0 - >=dev-java/xerces-2.9.1:2 - dev-lang/perl - dev-libs/openssl - dev-util/pkgconfig - sys-apps/lsb-release - || ( >=sys-devel/autoconf-2.65:2.5 <sys-devel/autoconf-2.64:2.5 ) - ${X_DEPEND} - jbootstrap? ( - || ( <dev-java/eclipse-ecj-3.7 dev-java/ecj-gcj ) - ) - pax_kernel? ( sys-apps/paxctl )" - -PDEPEND="webstart? ( dev-java/icedtea-web:6 ) - nsplugin? ( dev-java/icedtea-web:6[nsplugin] )" - -S="${WORKDIR}"/${ICEDTEA_PKG} - -# a bit of hack so the VM switching is triggered without causing dependency troubles -JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5" -JAVA_PKG_WANT_SOURCE="1.5" -JAVA_PKG_WANT_TARGET="1.5" - -pkg_setup() { - # 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-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version ">dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-6" - elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6-bin" - elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-bin-6" - elif has_version dev-java/gcj-jdk; then - JAVA_PKG_FORCE_VM="gcj-jdk" - else - die "Unable to find a supported VM for building" - fi - - einfo "Forced vm ${JAVA_PKG_FORCE_VM}" - java-vm-2_pkg_setup - java-pkg-2_pkg_setup -} - -src_unpack() { - unpack ${ICEDTEA_PKG}.tar.gz -} - -java_prepare() { - # icedtea doesn't like some locales. #330433 #389717 - export LANG="C" LC_ALL="C" - - epatch "${FILESDIR}"/${PN}-${SLOT}_pax_kernel_support.patch #389751 - eautoreconf -} - -src_configure() { - local config bootstrap - local vm=$(java-pkg_get-current-vm) - - # IcedTea6 can't be built using IcedTea7; its class files are too new - if has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then - use jbootstrap && bootstrap=yes - elif has "${vm}" gcj-jdk; then - # gcj-jdk ensures ecj is present. - use jbootstrap || einfo "bootstrap forced on for ${vm}, ignoring use jbootstrap" - bootstrap=yes - 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)" - fi - - if [[ ${bootstrap} ]]; then - config="${config} --enable-bootstrap" - - # icedtea-6 javac wrapper requires to always have ecj if bootstrapping #392337 - local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)" - # Don't use eclipse-ecj-3.7 #392587 - local ecj_all=( "${EPREFIX}"/usr/share/{eclipse-ecj,ecj-gcj}-* ) - ecj_all=( "${ecj_all[@]/*eclipse-ecj-3.7*/}" ) - if ! has "${ecj_jar%/lib/ecj.jar}" "${ecj_all[@]}"; then - ecj_jar="${ecj_jar%/lib/ecj.jar}" - ewarn "${ecj_jar##*/} set as system ecj, can't use for bootstrap" - ewarn "Found usable: ${ecj_all[@]##*/}" - ewarn "using ${ecj_all##*/} instead" - ecj_jar="${ecj_all}"/lib/ecj.jar - fi - config="${config} --with-ecj-jar=${ecj_jar}" - else - config="${config} --disable-bootstrap" - fi - - # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ... - # Otherwise use CACAO - if ! has "${ARCH}" amd64 sparc x86; then - config="${config} --enable-cacao --with-cacao-src-zip=${DISTDIR}/${CACAO_TARBALL}" - fi - - # OpenJDK-specific parallelism support. Bug #389791, #337827 - # Implementation modified from waf-utils.eclass - # Note that "-j" is converted to "-j1" as the system doesn't support --load-average - local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" ) - config="${config} --with-parallel-jobs=${procs}"; - einfo "Configuring using --with-parallel-jobs=${procs}" - - if use javascript ; then - config="${config} --with-rhino=$(java-pkg_getjar rhino:1.6 js.jar)" - else - config="${config} --without-rhino" - fi - - if use hs20 ; then - config="${config} --with-hotspot-build=hs20 --with-hotspot-src-zip=${DISTDIR}/${HOTSPOT_TARBALL}" - fi - - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ - --with-jaxp-drop-zip="${DISTDIR}/${JAXP_TARBALL}" \ - --with-jaxws-drop-zip="${DISTDIR}/${JAXWS_TARBALL}" \ - --with-jaf-drop-zip="${DISTDIR}/${JAF_TARBALL}" \ - --with-jdk-home="$(java-config -O)" \ - --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ - $(use_enable !debug optimizations) \ - $(use_enable doc docs) \ - $(use_enable nss) \ - $(use_enable pulseaudio pulse-java) \ - $(use_enable systemtap) \ - $(use_with pax_kernel pax paxctl) -} - -src_compile() { - # Would use GENTOO_VM otherwise. - export ANT_RESPECT_JAVA_HOME=TRUE - - # ant -diagnostics in Ant 1.8.0 fails without xerces-2 and xalan - # Load the least that's needed to avoid possible classpath collisions. - export ANT_TASKS="xerces-2 xalan ant-nodeps" - - emake -} - -src_test() { - # Use Xvfb for tests - unset DISPLAY - - Xemake -j1 check -} - -src_install() { - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${ED}/${dest}" - dodir "${dest}" - - dodoc README NEWS AUTHORS THANKYOU - dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT} - - cd openjdk.build/j2sdk-image || die - - # Ensures HeadlessGraphicsEnvironment is used. - if ! use X; then - rm -r jre/lib/$(get_system_arch)/xawt || die - fi - - #402507 - mkdir jre/.systemPrefs || die - touch jre/.systemPrefs/.system.lock || die - touch jre/.systemPrefs/.systemRootModFile || die - - # doins can't handle symlinks. - cp -vRP bin include jre lib man "${ddest}" || die - - dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README - - if use doc; then - # java-pkg_dohtml needed for package-list #302654 - java-pkg_dohtml -r ../docs/* || die - fi - - if use examples; then - dodir "${dest}/share"; - cp -vRP demo sample "${ddest}/share/" || die - fi - - if use source; then - cp src.zip "${ddest}" || die - fi - - # Fix the permissions. - find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die - - # Needs to be done before generating cacerts - java-vm_set-pax-markings "${ddest}" - - # We need to generate keystore - bug #273306 - einfo "Generating cacerts file from certificates in ${EPREFIX}/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 "${EPREFIX}"/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 - - # Bug 390663 - cp "${FILESDIR}"/fontconfig.Gentoo.properties.src "${T}"/fontconfig.Gentoo.properties || die - eprefixify "${T}"/fontconfig.Gentoo.properties - insinto "${dest}"/jre/lib - doins "${T}"/fontconfig.Gentoo.properties - - set_java_env "${FILESDIR}/icedtea.env" - if ! use X || ! use alsa || ! use cups; then - java-vm_revdep-mask "${dest}" - fi -} - -pkg_preinst() { - if has_version "<=dev-java/icedtea-6.1.10.4:${SLOT}"; then - # portage would preserve the symlink otherwise, related to bug #384397 - rm -f "${EROOT}/usr/lib/jvm/icedtea6" - elog "To unify the layout and simplify scripts, the identifier of Icedtea-6*" - elog "has changed from 'icedtea6' to 'icedtea-6' starting from version 6.1.10.4-r1" - elog "If you had icedtea6 as system VM, the change should be automatic, however" - elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" - elog "and the same holds for any user VM settings. Sorry for the inconvenience." - fi -} diff --git a/dev-java/icedtea/icedtea-6.1.11.ebuild b/dev-java/icedtea/icedtea-6.1.11.ebuild deleted file mode 100644 index 091f32d50932..000000000000 --- a/dev-java/icedtea/icedtea-6.1.11.ebuild +++ /dev/null @@ -1,335 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.11.ebuild,v 1.4 2012/02/24 18:43:48 sera Exp $ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-7.* AS WELL * -# ********************************************************* - -EAPI="4" - -inherit autotools java-pkg-2 java-vm-2 pax-utils prefix versionator virtualx - -ICEDTEA_PKG=${PN}$(replace_version_separator 1 -) -OPENJDK_BUILD="24" -OPENJDK_DATE="14_nov_2011" -OPENJDK_TARBALL="openjdk-6-src-b${OPENJDK_BUILD}-${OPENJDK_DATE}.tar.gz" -JAXP_TARBALL="jaxp144_03.zip" -JAXWS_TARBALL="jdk6-jaxws2_1_6-2011_06_13.zip" -JAF_TARBALL="jdk6-jaf-b20.zip" -CACAO_TARBALL="cff92704c4e0.tar.gz" - -DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" -HOMEPAGE="http://icedtea.classpath.org" -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://icedtea.classpath.org/download/drops/${JAXWS_TARBALL} - http://icedtea.classpath.org/download/drops/${JAF_TARBALL} - http://icedtea.classpath.org/download/drops/${JAXP_TARBALL} - !amd64? ( !sparc? ( !x86? ( - http://icedtea.classpath.org/download/drops/cacao/${CACAO_TARBALL} - ) ) )" - -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" - -IUSE="+X +alsa cjk +cups debug doc examples javascript +jbootstrap +nsplugin - +nss pax_kernel pulseaudio +source systemtap test +webstart" - -# Ideally the following were optional at build time. -ALSA_COMMON_DEP=" - >=media-libs/alsa-lib-1.0" -CUPS_COMMON_DEP=" - >=net-print/cups-1.2.12" -X_COMMON_DEP=" - dev-libs/glib - >=media-libs/freetype-2.3.5 - >=x11-libs/gtk+-2.8:2 - >=x11-libs/libX11-1.1.3 - >=x11-libs/libXext-1.1.1 - >=x11-libs/libXi-1.1.3 - >=x11-libs/libXrender-0.9.4 - >=x11-libs/libXtst-1.0.3" -X_DEPEND=" - >=x11-libs/libXau-1.0.3 - >=x11-libs/libXdmcp-1.0.2 - >=x11-libs/libXinerama-1.0.2 - >=x11-libs/libXp-1.0.0 - x11-proto/inputproto - >=x11-proto/xextproto-7.1.1 - x11-proto/xineramaproto - x11-proto/xproto" - -COMMON_DEP=" - >=media-libs/giflib-4.1.6 - >=media-libs/libpng-1.2 - >=sys-libs/zlib-1.2.3 - virtual/jpeg - javascript? ( dev-java/rhino:1.6 ) - nss? ( >=dev-libs/nss-3.12.5-r1 ) - pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) - systemtap? ( >=dev-util/systemtap-1 )" - -# media-fonts/lklug needs ppc ppc64 keywords -RDEPEND="${COMMON_DEP} - !dev-java/icedtea6 - X? ( - ${X_COMMON_DEP} - media-fonts/dejavu - cjk? ( - media-fonts/arphicfonts - media-fonts/baekmuk-fonts - !ppc? ( !ppc64? ( media-fonts/lklug ) ) - media-fonts/lohit-fonts - media-fonts/sazanami - ) - ) - alsa? ( ${ALSA_COMMON_DEP} ) - cups? ( ${CUPS_COMMON_DEP} )" - -# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present. -# ca-certificates, perl and openssl are used for the cacerts keystore generation -# xext headers have two variants depending on version - bug #288855 -# !eclipse-ecj-3.7 - bug #392587 -# autoconf - as long as we use eautoreconf, version restrictions for bug #294918 -DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} - || ( - >=dev-java/gcj-jdk-4.3 - dev-java/icedtea-bin:6 - dev-java/icedtea:6 - ) - app-arch/cpio - app-arch/unzip - app-arch/zip - app-misc/ca-certificates - >=dev-java/ant-core-1.8.1 - dev-java/ant-nodeps - dev-lang/perl - >=dev-libs/libxslt-1.1.26 - dev-libs/openssl - dev-util/pkgconfig - sys-apps/lsb-release - || ( >=sys-devel/autoconf-2.65:2.5 <sys-devel/autoconf-2.64:2.5 ) - ${X_DEPEND} - jbootstrap? ( - || ( <dev-java/eclipse-ecj-3.7 dev-java/ecj-gcj ) - ) - pax_kernel? ( sys-apps/paxctl )" - -PDEPEND="webstart? ( dev-java/icedtea-web:6 ) - nsplugin? ( dev-java/icedtea-web:6[nsplugin] )" - -S="${WORKDIR}"/${ICEDTEA_PKG} - -# a bit of hack so the VM switching is triggered without causing dependency troubles -JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5" -JAVA_PKG_WANT_SOURCE="1.5" -JAVA_PKG_WANT_TARGET="1.5" - -pkg_setup() { - # 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-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version ">dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-6" - elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6-bin" - elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-bin-6" - elif has_version dev-java/gcj-jdk; then - JAVA_PKG_FORCE_VM="gcj-jdk" - else - die "Unable to find a supported VM for building" - fi - - einfo "Forced vm ${JAVA_PKG_FORCE_VM}" - java-vm-2_pkg_setup - java-pkg-2_pkg_setup -} - -src_unpack() { - unpack ${ICEDTEA_PKG}.tar.gz -} - -java_prepare() { - # icedtea doesn't like some locales. #330433 #389717 - export LANG="C" LC_ALL="C" - - epatch "${FILESDIR}"/${PN}-${SLOT}_pax_kernel_support.patch #389751 - eautoreconf -} - -src_configure() { - local config bootstrap - local vm=$(java-pkg_get-current-vm) - - # IcedTea6 can't be built using IcedTea7; its class files are too new - if has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then - use jbootstrap && bootstrap=yes - elif has "${vm}" gcj-jdk; then - # gcj-jdk ensures ecj is present. - use jbootstrap || einfo "bootstrap forced on for ${vm}, ignoring use jbootstrap" - bootstrap=yes - 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)" - fi - - if [[ ${bootstrap} ]]; then - config="${config} --enable-bootstrap" - - # icedtea-6 javac wrapper requires to always have ecj if bootstrapping #392337 - local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)" - # Don't use eclipse-ecj-3.7 #392587 - local ecj_all=( "${EPREFIX}"/usr/share/{eclipse-ecj,ecj-gcj}-* ) - ecj_all=( "${ecj_all[@]/*eclipse-ecj-3.7*/}" ) - if ! has "${ecj_jar%/lib/ecj.jar}" "${ecj_all[@]}"; then - ecj_jar="${ecj_jar%/lib/ecj.jar}" - ewarn "${ecj_jar##*/} set as system ecj, can't use for bootstrap" - ewarn "Found usable: ${ecj_all[@]##*/}" - ewarn "using ${ecj_all##*/} instead" - ecj_jar="${ecj_all}"/lib/ecj.jar - fi - config="${config} --with-ecj-jar=${ecj_jar}" - else - config="${config} --disable-bootstrap" - fi - - # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ... - # Otherwise use CACAO - if ! has "${ARCH}" amd64 sparc x86; then - config="${config} --enable-cacao --with-cacao-src-zip=${DISTDIR}/${CACAO_TARBALL}" - fi - - # OpenJDK-specific parallelism support. Bug #389791, #337827 - # Implementation modified from waf-utils.eclass - # Note that "-j" is converted to "-j1" as the system doesn't support --load-average - local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" ) - config="${config} --with-parallel-jobs=${procs}"; - einfo "Configuring using --with-parallel-jobs=${procs}" - - if use javascript ; then - config="${config} --with-rhino=$(java-pkg_getjar rhino:1.6 js.jar)" - else - config="${config} --without-rhino" - fi - - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ - --with-jaxp-drop-zip="${DISTDIR}/${JAXP_TARBALL}" \ - --with-jaxws-drop-zip="${DISTDIR}/${JAXWS_TARBALL}" \ - --with-jaf-drop-zip="${DISTDIR}/${JAF_TARBALL}" \ - --with-jdk-home="$(java-config -O)" \ - --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ - $(use_enable !debug optimizations) \ - $(use_enable doc docs) \ - $(use_enable nss) \ - $(use_enable pulseaudio pulse-java) \ - $(use_enable systemtap) \ - $(use_with pax_kernel pax paxctl) -} - -src_compile() { - # Would use GENTOO_VM otherwise. - export ANT_RESPECT_JAVA_HOME=TRUE - - # Load the least that's needed to avoid possible classpath collisions. - export ANT_TASKS="ant-nodeps" - - emake -} - -src_test() { - # Use Xvfb for tests - unset DISPLAY - - Xemake -j1 check -} - -src_install() { - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${ED}/${dest}" - dodir "${dest}" - - dodoc README NEWS AUTHORS THANKYOU - dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT} - - cd openjdk.build/j2sdk-image || die - - # Ensures HeadlessGraphicsEnvironment is used. - if ! use X; then - rm -r jre/lib/$(get_system_arch)/xawt || die - fi - - #402507 - mkdir jre/.systemPrefs || die - touch jre/.systemPrefs/.system.lock || die - touch jre/.systemPrefs/.systemRootModFile || die - - # doins can't handle symlinks. - cp -vRP bin include jre lib man "${ddest}" || die - - dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README - - if use doc; then - # java-pkg_dohtml needed for package-list #302654 - java-pkg_dohtml -r ../docs/* || die - fi - - if use examples; then - dodir "${dest}/share"; - cp -vRP demo sample "${ddest}/share/" || die - fi - - if use source; then - cp src.zip "${ddest}" || die - fi - - # Fix the permissions. - find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die - - # Needs to be done before generating cacerts - java-vm_set-pax-markings "${ddest}" - - # We need to generate keystore - bug #273306 - einfo "Generating cacerts file from certificates in ${EPREFIX}/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 "${EPREFIX}"/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 - - # Bug 390663 - cp "${FILESDIR}"/fontconfig.Gentoo.properties.src "${T}"/fontconfig.Gentoo.properties || die - eprefixify "${T}"/fontconfig.Gentoo.properties - insinto "${dest}"/jre/lib - doins "${T}"/fontconfig.Gentoo.properties - - set_java_env "${FILESDIR}/icedtea.env" - if ! use X || ! use alsa || ! use cups; then - java-vm_revdep-mask "${dest}" - fi -} - -pkg_preinst() { - if has_version "<=dev-java/icedtea-6.1.10.4:${SLOT}"; then - # portage would preserve the symlink otherwise, related to bug #384397 - rm -f "${EROOT}/usr/lib/jvm/icedtea6" - elog "To unify the layout and simplify scripts, the identifier of Icedtea-6*" - elog "has changed from 'icedtea6' to 'icedtea-6' starting from version 6.1.10.4-r1" - elog "If you had icedtea6 as system VM, the change should be automatic, however" - elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" - elog "and the same holds for any user VM settings. Sorry for the inconvenience." - fi -} diff --git a/dev-java/icedtea/icedtea-7.2.0-r1.ebuild b/dev-java/icedtea/icedtea-7.2.0-r1.ebuild deleted file mode 100644 index c887a0a6e001..000000000000 --- a/dev-java/icedtea/icedtea-7.2.0-r1.ebuild +++ /dev/null @@ -1,314 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-7.2.0-r1.ebuild,v 1.18 2011/11/21 11:40:06 sera Exp $ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL * -# ********************************************************* - -EAPI="4" - -inherit flag-o-matic java-pkg-2 java-vm-2 versionator - -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="7" -KEYWORDS="~amd64 ~x86" - -DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" -ICEDTEA_VER="$(get_version_component_range 2-3)" -ICEDTEA_PKG=icedtea-${ICEDTEA_VER} -OPENJDK_TARBALL="0a76e5390e68.tar.gz" -CORBA_TARBALL="4d9e4fb8af09.tar.gz" -HOTSPOT_TARBALL="b28ae681bae0.tar.gz" -JAXP_TARBALL="948e734135ea.tar.gz" -JAXWS_TARBALL="a2ebfdc9db7e.tar.gz" -JDK_TARBALL="2054526dd141.tar.gz" -LANGTOOLS_TARBALL="9b85f1265346.tar.gz" -SRC_URI="http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/archive/${OPENJDK_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/corba/archive/${CORBA_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxp/archive/${JAXP_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxws/archive/${JAXWS_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jdk/archive/${JDK_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/hotspot/archive/${HOTSPOT_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/langtools/archive/${LANGTOOLS_TARBALL}" -HOMEPAGE="http://icedtea.classpath.org" -S=${WORKDIR}/${ICEDTEA_PKG} - -# Missing options: -# shark - needs adding -IUSE="debug doc examples javascript +nsplugin pulseaudio systemtap +webstart" - -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:2 - >=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 - >=x11-libs/libXext-1.1.1 - virtual/jpeg - >=media-libs/libpng-1.2 - >=media-libs/giflib-4.1.6 - media-libs/lcms:2 - >=sys-libs/zlib-1.2.3 - x11-proto/inputproto - x11-proto/xineramaproto - pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) - javascript? ( dev-java/rhino:1.6 ) - ppc? ( virtual/libffi ) - ppc64? ( virtual/libffi ) - >=x11-libs/libXrender-0.9.4 - systemtap? ( >=dev-util/systemtap-1 ) - !dev-java/icedtea:0 - sys-apps/attr - >=dev-libs/glib-2.26 - media-libs/fontconfig" - -# Additional dependencies for building: -# zip: extract OpenJDK tarball, and needed by configure -# ant, ecj, jdk: required to build Java code -# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present. -# ca-certificates, perl and openssl are used for the cacerts keystore generation -# xext headers have two variants depending on version - bug #288855 -# autoconf - as long as we use eautoreconf, version restrictions for bug #294918 -DEPEND="${RDEPEND} - || ( - >=dev-java/gcj-jdk-4.3 - dev-java/icedtea-bin:7 - dev-java/icedtea-bin:6 - dev-java/icedtea:7 - dev-java/icedtea:6 - ) - app-arch/zip - >=dev-libs/libxslt-1.1.26 - >=x11-proto/xextproto-7.1.1 - x11-proto/xproto - >=dev-java/ant-core-1.8.1 - dev-java/ant-nodeps - app-misc/ca-certificates - dev-lang/perl - dev-libs/openssl - sys-apps/lsb-release - app-arch/cpio" -# || ( >=sys-devel/autoconf-2.65:2.5 <sys-devel/autoconf-2.64:2.5 )" - -PDEPEND="webstart? ( dev-java/icedtea-web:7 ) - nsplugin? ( dev-java/icedtea-web:7[nsplugin] )" - -# a bit of hack so the VM switching is triggered without causing dependency troubles -JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5" -JAVA_PKG_WANT_SOURCE="1.5" -JAVA_PKG_WANT_TARGET="1.5" - -pkg_setup() { - if use nsplugin && ! use webstart ; then - elog "Note that the nsplugin flag implies the webstart flag. Enable it to remove this message." - fi - - if [[ "${MERGE_TYPE}" == "binary" ]]; then - return - fi - - # icedtea doesn't like some locales. #330433 #389717 - export LANG="C" LC_ALL="C" - - # 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-7.2.0:7"; then - JAVA_PKG_FORCE_VM="icedtea7" - elif has_version ">dev-java/icedtea-7.2.0:7"; then - JAVA_PKG_FORCE_VM="icedtea-7" - elif has_version "dev-java/icedtea-bin:7"; then - JAVA_PKG_FORCE_VM="icedtea-bin-7" - elif has_version "<=dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version ">dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-6" - elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6-bin" - elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-bin-6" - elif has_version dev-java/gcj-jdk; then - JAVA_PKG_FORCE_VM="gcj-jdk" - else - die "Unable to find a supported VM for building" - fi - - einfo "Forced vm ${JAVA_PKG_FORCE_VM}" - java-vm-2_pkg_setup - java-pkg-2_pkg_setup - - # without this, access violation is thrown - addpredict "/proc/self/coredump_filter" -} - -src_unpack() { - unpack ${ICEDTEA_PKG}.tar.gz -} - -java_prepare() { - # Fix non bootstrap builds with PaX enabled kernels. Bug #389751 - # Move applying test_gamma.patch to before creating boot copy. - if host-is-pax; then - sed -i -e 's|patches/boot/test_gamma.patch||' Makefile.in || die - sed -i -e 's|openjdk-boot|openjdk|g' patches/boot/test_gamma.patch || die - export DISTRIBUTION_PATCHES=patches/boot/test_gamma.patch - 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) - - if has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then - # We can't currently bootstrap with a IcedTea6 JVM :( - config="${config} --disable-bootstrap" - elif has "${vm}" icedtea7 icedtea-7 icedtea-bin-7; then - # We can't currently bootstrap with a PaX enabled kernel :( - host-is-pax && config="${config} --disable-bootstrap" - elif has "${vm}" gcj-jdk ; then - if host-is-pax; then - eerror "Can't currently bootstrap IcedTea using gcj-jdk or cacao on a PaX enabled host" - eerror "Sorry for the inconvenience" - die "Use an existing IcedTea build instead or disable PaX on the host" - fi - else - eerror "IcedTea must be built with either a JDK based on GNU Classpath or an existing build of IcedTea." - die "Install a GNU Classpath JDK (gcj-jdk)" - fi - - # OpenJDK-specific parallelism support. Bug #389791, #337827 - # Implementation modified from waf-utils.eclass - # Note that "-j" is converted to "-j1" as the system doesn't support --load-average - local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" ) - config="${config} --with-parallel-jobs=${procs}"; - einfo "Configuring using --with-parallel-jobs=${procs}" - - if need_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 - - unset_vars - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ - --with-corba-src-zip="${DISTDIR}/${CORBA_TARBALL}" \ - --with-jaxp-src-zip="${DISTDIR}/${JAXP_TARBALL}" \ - --with-jaxws-src-zip="${DISTDIR}/${JAXWS_TARBALL}" \ - --with-jdk-src-zip="${DISTDIR}/${JDK_TARBALL}" \ - --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \ - --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_TARBALL}" \ - --with-jdk-home="$(java-config -O)" \ - --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ - --disable-jdk-tests \ - $(use_enable !debug optimizations) \ - $(use_enable doc docs) \ - $(use_with javascript rhino ${rhino_jar}) \ - --disable-cacao \ - --disable-jamvm \ - $(use_enable pulseaudio pulse-java) \ - $(use_enable systemtap) -} - -src_compile() { - # Newer versions of Gentoo's ant add - # an environment variable so it works properly... - export ANT_RESPECT_JAVA_HOME=TRUE - - # We try to load the least that's needed to avoid possible classpath collisions - export ANT_TASKS="ant-nodeps" - - emake -j 1 -} - -src_install() { - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${D}/${dest}" - dodir "${dest}" - - local arch=${ARCH} - - dodoc README NEWS AUTHORS - dosym "/usr/share/doc/${PF}" "/usr/share/doc/${PN}${SLOT}" - - cd "${S}/openjdk.build/j2sdk-image" || die - - # Don't hide classes - rm -f lib/ct.sym - - 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" - - dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README - - 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 - - # Needs to be done before generating cacerts - java-vm_set-pax-markings "${ddest}" - - # 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" \ - -e "s#@LIBDIR@#$(get_libdir)#g" \ - < "${FILESDIR}/icedtea.env" > "${T}/icedtea.env" - set_java_env "${T}/icedtea.env" - - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter -} - -need_zero() { - ! use amd64 && ! use x86 && ! use sparc -} - -pkg_preinst() { - if has_version "<=dev-java/icedtea-7.2.0:7"; then - # portage would preserve the symlink otherwise, related to bug #384397 - rm -f "${ROOT}/usr/lib/jvm/icedtea7" - elog "To unify the layout and simplify scripts, the identifier of Icedtea-7*" - elog "has changed from 'icedtea7' to 'icedtea-7' starting from version 7.2.0-r1" - elog "If you had icedtea7 as system VM, the change should be automatic, however" - elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" - elog "and the same holds for any user VM settings. Sorry for the inconvenience." - fi -} diff --git a/dev-java/icedtea/icedtea-7.2.0-r2.ebuild b/dev-java/icedtea/icedtea-7.2.0-r2.ebuild deleted file mode 100644 index 2d4d5b424e35..000000000000 --- a/dev-java/icedtea/icedtea-7.2.0-r2.ebuild +++ /dev/null @@ -1,338 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-7.2.0-r2.ebuild,v 1.1 2011/11/28 15:29:59 sera Exp $ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL * -# ********************************************************* - -EAPI="4" - -inherit java-pkg-2 java-vm-2 pax-utils prefix versionator - -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="7" -KEYWORDS="~amd64 ~x86" - -DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" -ICEDTEA_VER="$(get_version_component_range 2-3)" -ICEDTEA_PKG=icedtea-${ICEDTEA_VER} -OPENJDK_TARBALL="0a76e5390e68.tar.gz" -CORBA_TARBALL="4d9e4fb8af09.tar.gz" -HOTSPOT_TARBALL="b28ae681bae0.tar.gz" -JAXP_TARBALL="948e734135ea.tar.gz" -JAXWS_TARBALL="a2ebfdc9db7e.tar.gz" -JDK_TARBALL="2054526dd141.tar.gz" -LANGTOOLS_TARBALL="9b85f1265346.tar.gz" -SRC_URI="http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/archive/${OPENJDK_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/corba/archive/${CORBA_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxp/archive/${JAXP_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxws/archive/${JAXWS_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jdk/archive/${JDK_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/hotspot/archive/${HOTSPOT_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/langtools/archive/${LANGTOOLS_TARBALL}" -HOMEPAGE="http://icedtea.classpath.org" -S=${WORKDIR}/${ICEDTEA_PKG} - -# Missing options: -# shark - needs adding -IUSE="X debug cjk doc examples javascript +jbootstrap +nsplugin pulseaudio +source systemtap +webstart" - -RDEPEND="!dev-java/icedtea:0 - >=dev-libs/glib-2.26 - >=media-libs/alsa-lib-1.0 - media-libs/fontconfig - >=media-libs/freetype-2.3.5 - >=media-libs/giflib-4.1.6 - media-libs/lcms:2 - >=media-libs/libpng-1.2 - >=net-print/cups-1.2.12 - sys-apps/attr - >=sys-libs/zlib-1.2.3 - virtual/jpeg - >=x11-libs/gtk+-2.8:2 - >=x11-libs/libX11-1.1.3 - >=x11-libs/libXau-1.0.3 - >=x11-libs/libXdmcp-1.0.2 - >=x11-libs/libXext-1.1.1 - >=x11-libs/libXi-1.1.3 - >=x11-libs/libXinerama-1.0.2 - >=x11-libs/libXp-1.0.0 - >=x11-libs/libXrender-0.9.4 - >=x11-libs/libXtst-1.0.3 - x11-proto/inputproto - x11-proto/xineramaproto - X? ( - media-fonts/dejavu - cjk? ( - media-fonts/arphicfonts - media-fonts/baekmuk-fonts - media-fonts/lklug - media-fonts/lohit-fonts - media-fonts/sazanami - ) - ) - javascript? ( dev-java/rhino:1.6 ) - ppc64? ( virtual/libffi ) - ppc? ( virtual/libffi ) - pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) - systemtap? ( >=dev-util/systemtap-1 )" - -# Additional dependencies for building: -# zip: extract OpenJDK tarball, and needed by configure -# ant, ecj, jdk: required to build Java code -# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present. -# ca-certificates, perl and openssl are used for the cacerts keystore generation -# xext headers have two variants depending on version - bug #288855 -# autoconf - as long as we use eautoreconf, version restrictions for bug #294918 -DEPEND="${RDEPEND} - || ( - >=dev-java/gcj-jdk-4.3 - dev-java/icedtea-bin:7 - dev-java/icedtea-bin:6 - dev-java/icedtea:7 - dev-java/icedtea:6 - ) - app-arch/zip - dev-util/pkgconfig - >=dev-libs/libxslt-1.1.26 - >=x11-proto/xextproto-7.1.1 - x11-proto/xproto - >=dev-java/ant-core-1.8.1 - dev-java/ant-nodeps - app-misc/ca-certificates - dev-lang/perl - dev-libs/openssl - sys-apps/lsb-release - app-arch/cpio" -# || ( >=sys-devel/autoconf-2.65:2.5 <sys-devel/autoconf-2.64:2.5 )" - -PDEPEND="webstart? ( dev-java/icedtea-web:7 ) - nsplugin? ( dev-java/icedtea-web:7[nsplugin] )" - -# a bit of hack so the VM switching is triggered without causing dependency troubles -JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5" -JAVA_PKG_WANT_SOURCE="1.5" -JAVA_PKG_WANT_TARGET="1.5" - -pkg_setup() { - if use nsplugin && ! use webstart ; then - elog "Note that the nsplugin flag implies the webstart flag. Enable it to remove this message." - fi - - [[ "${MERGE_TYPE}" == "binary" ]] && return #258423 - - # icedtea doesn't like some locales. #330433 #389717 - export LANG="C" LC_ALL="C" - - # 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-7.2.0:7"; then - JAVA_PKG_FORCE_VM="icedtea7" - elif has_version ">dev-java/icedtea-7.2.0:7"; then - JAVA_PKG_FORCE_VM="icedtea-7" - elif has_version "dev-java/icedtea-bin:7"; then - JAVA_PKG_FORCE_VM="icedtea-bin-7" - elif has_version "<=dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version ">dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-6" - elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6-bin" - elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-bin-6" - elif has_version dev-java/gcj-jdk; then - JAVA_PKG_FORCE_VM="gcj-jdk" - else - die "Unable to find a supported VM for building" - fi - - einfo "Forced vm ${JAVA_PKG_FORCE_VM}" - java-vm-2_pkg_setup - java-pkg-2_pkg_setup - - # without this, access violation is thrown - addpredict "/proc/self/coredump_filter" -} - -src_unpack() { - unpack ${ICEDTEA_PKG}.tar.gz -} - -java_prepare() { - # Fix non bootstrap builds with PaX enabled kernels. Bug #389751 - # Move applying test_gamma.patch to before creating boot copy. - if host-is-pax; then - sed -i -e 's|patches/boot/test_gamma.patch||' Makefile.in || die - sed -i -e 's|openjdk-boot|openjdk|g' patches/boot/test_gamma.patch || die - export DISTRIBUTION_PATCHES=patches/boot/test_gamma.patch - 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) - - if has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then - if use jbootstrap; then - einfo "We can't currently bootstrap with a IcedTea6 JVM :(" - einfo "bootstrap forced off, ignoring use jbootstrap" - fi - config="${config} --disable-bootstrap" - elif has "${vm}" icedtea7 icedtea-7 icedtea-bin-7; then - if host-is-pax; then - if use jbootstrap; then - einfo "We can't currently bootstrap with a PaX enabled kernel :(" - einfo "bootstrap forced off, ignoring use jbootstrap" - fi - config="${config} --disable-bootstrap" - else - config="${config} $(use_enable jbootstrap bootstrap)" - fi - elif has "${vm}" gcj-jdk; then - if host-is-pax; then - eerror "Can't currently bootstrap IcedTea using gcj-jdk or cacao on a PaX enabled host" - eerror "Sorry for the inconvenience" - die "Use an existing IcedTea build instead or disable PaX on the host" - fi - if ! use jbootstrap; then - einfo "bootstrap forced on for ${vm}, ignoring use jbootstrap" - fi - else - eerror "IcedTea must be built with either a JDK based on GNU Classpath or an existing build of IcedTea." - die "Install a GNU Classpath JDK (gcj-jdk)" - fi - - # OpenJDK-specific parallelism support. Bug #389791, #337827 - # Implementation modified from waf-utils.eclass - # Note that "-j" is converted to "-j1" as the system doesn't support --load-average - local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" ) - config="${config} --with-parallel-jobs=${procs}"; - einfo "Configuring using --with-parallel-jobs=${procs}" - - if need_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 - - unset_vars - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ - --with-corba-src-zip="${DISTDIR}/${CORBA_TARBALL}" \ - --with-jaxp-src-zip="${DISTDIR}/${JAXP_TARBALL}" \ - --with-jaxws-src-zip="${DISTDIR}/${JAXWS_TARBALL}" \ - --with-jdk-src-zip="${DISTDIR}/${JDK_TARBALL}" \ - --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \ - --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_TARBALL}" \ - --with-jdk-home="$(java-config -O)" \ - --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ - --disable-jdk-tests \ - $(use_enable !debug optimizations) \ - $(use_enable doc docs) \ - $(use_with javascript rhino ${rhino_jar}) \ - --disable-cacao \ - --disable-jamvm \ - $(use_enable pulseaudio pulse-java) \ - $(use_enable systemtap) -} - -src_compile() { - # Newer versions of Gentoo's ant add - # an environment variable so it works properly... - export ANT_RESPECT_JAVA_HOME=TRUE - - # We try to load the least that's needed to avoid possible classpath collisions - export ANT_TASKS="ant-nodeps" - - emake -j 1 -} - -src_install() { - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${ED}/${dest}" - dodir "${dest}" - - dodoc README NEWS AUTHORS - dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT} - - cd openjdk.build/j2sdk-image || die - - # Don't hide classes - rm lib/ct.sym || die - - # doins can't handle symlinks. - cp -vRP bin include jre lib man "${ddest}" || die - - dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README - - if use doc; then - # java-pkg_dohtml needed for package-list #302654 - java-pkg_dohtml -r ../docs/* || die - fi - - if use examples; then - dodir "${dest}/share"; - cp -vRP demo sample "${ddest}/share/" || die - fi - - if use source; then - cp src.zip "${ddest}" || die - fi - - # Fix the permissions. - find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die - - # Needs to be done before generating cacerts - java-vm_set-pax-markings "${ddest}" - - # We need to generate keystore - bug #273306 - einfo "Generating cacerts file from certificates in ${EPREFIX}/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 "${EPREFIX}"/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 - - # OpenJDK7 should be able to use fontconfig instead, but wont hurt to - # install it anyway. Bug 390663 - cp "${FILESDIR}"/fontconfig.Gentoo.properties.src "${T}"/fontconfig.Gentoo.properties || die - eprefixify "${T}"/fontconfig.Gentoo.properties - insinto "${dest}"/jre/lib - doins "${T}"/fontconfig.Gentoo.properties - - set_java_env "${FILESDIR}/icedtea.env" - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter -} - -need_zero() { - ! use amd64 && ! use x86 && ! use sparc -} - -pkg_preinst() { - if has_version "<=dev-java/icedtea-7.2.0:7"; then - # portage would preserve the symlink otherwise, related to bug #384397 - rm -f "${EROOT}/usr/lib/jvm/icedtea7" - elog "To unify the layout and simplify scripts, the identifier of Icedtea-7*" - elog "has changed from 'icedtea7' to 'icedtea-7' starting from version 7.2.0-r1" - elog "If you had icedtea7 as system VM, the change should be automatic, however" - elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" - elog "and the same holds for any user VM settings. Sorry for the inconvenience." - fi -} diff --git a/dev-java/icedtea/icedtea-7.2.0-r3.ebuild b/dev-java/icedtea/icedtea-7.2.0-r3.ebuild deleted file mode 100644 index aab589b27a33..000000000000 --- a/dev-java/icedtea/icedtea-7.2.0-r3.ebuild +++ /dev/null @@ -1,405 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-7.2.0-r3.ebuild,v 1.4 2012/02/08 13:09:17 sera Exp $ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL * -# ********************************************************* - -EAPI="4" - -inherit java-pkg-2 java-vm-2 pax-utils prefix versionator - -ICEDTEA_PKG=icedtea-$(get_version_component_range 2-3) -OPENJDK_TARBALL="0a76e5390e68.tar.gz" -CORBA_TARBALL="4d9e4fb8af09.tar.gz" -HOTSPOT_TARBALL="b28ae681bae0.tar.gz" -JAXP_TARBALL="948e734135ea.tar.gz" -JAXWS_TARBALL="a2ebfdc9db7e.tar.gz" -JDK_TARBALL="2054526dd141.tar.gz" -LANGTOOLS_TARBALL="9b85f1265346.tar.gz" -CACAO_TARBALL="4549072ab2de.tar.gz" # 30 Aug 2011 -JAMVM_TARBALL="jamvm-310c491ddc14e92a6ffff27030a1a1821e6395a8.tar.gz" # 26 Sep 2011 -#CACAO_TARBALL="cacao-2204b08fcae9.tar.gz" # 03 Nov 2011 -#JAMVM_TARBALL="jamvm-4617da717ecb05654ea5bb9572338061106a414d.tar.gz" # 10 Oct 2011 -S=${WORKDIR}/${ICEDTEA_PKG} - -DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" -HOMEPAGE="http://icedtea.classpath.org" -SRC_URI=" - http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/archive/${OPENJDK_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/corba/archive/${CORBA_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxp/archive/${JAXP_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxws/archive/${JAXWS_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jdk/archive/${JDK_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/hotspot/archive/${HOTSPOT_TARBALL} - http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/langtools/archive/${LANGTOOLS_TARBALL} - jamvm? ( http://icedtea.classpath.org/download/drops/jamvm/${JAMVM_TARBALL} )" - #cacao? ( http://icedtea.classpath.org/download/drops/cacao/${CACAO_TARBALL} ) - -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="7" -KEYWORDS="~amd64 ~x86" - -# Missing options: cacao zero shark - for building additional vms -IUSE="+X +alsa cjk +cups debug doc examples -jamvm javascript +jbootstrap - +nsplugin +nss pulseaudio +source systemtap +webstart" -REQUIRED_USE=" - jamvm? ( jbootstrap )" - #cacao? ( jbootstrap ) - -# Ideally the following were optional at build time. -ALSA_COMMON_DEP=" - >=media-libs/alsa-lib-1.0" -CUPS_COMMON_DEP=" - >=net-print/cups-1.2.12" -X_COMMON_DEP=" - >=dev-libs/atk-1.30.0 - >=dev-libs/glib-2.26 - media-libs/fontconfig - >=media-libs/freetype-2.3.5 - >=x11-libs/cairo-1.8.8 - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-2.8:2 - >=x11-libs/libX11-1.1.3 - >=x11-libs/libXext-1.1.1 - >=x11-libs/libXi-1.1.3 - >=x11-libs/libXrender-0.9.4 - >=x11-libs/libXtst-1.0.3 - >=x11-libs/pango-1.24.5" -X_DEPEND=" - >=x11-libs/libXau-1.0.3 - >=x11-libs/libXdmcp-1.0.2 - >=x11-libs/libXinerama-1.0.2 - >=x11-libs/libXp-1.0.0 - x11-proto/inputproto - >=x11-proto/xextproto-7.1.1 - x11-proto/xineramaproto - x11-proto/xproto" - -# virtual/libffi is needed for Zero -COMMON_DEP=" - >=media-libs/giflib-4.1.6 - media-libs/lcms:2 - >=media-libs/libpng-1.2 - >=sys-devel/gcc-4.3 - >=sys-libs/glibc-2.11.2 - >=sys-libs/zlib-1.2.3 - virtual/jpeg - javascript? ( dev-java/rhino:1.6 ) - nss? ( >=dev-libs/nss-3.12.5-r1 ) - pulseaudio? ( >=media-sound/pulseaudio-0.9.11 ) - systemtap? ( >=dev-util/systemtap-1 ) - !amd64? ( !sparc? ( !x86? ( virtual/libffi ) ) )" - -# cups is needed for X. #390945 #390975 -RDEPEND="${COMMON_DEP} - !dev-java/icedtea:0 - X? ( - ${CUPS_COMMON_DEP} - ${X_COMMON_DEP} - media-fonts/dejavu - cjk? ( - media-fonts/arphicfonts - media-fonts/baekmuk-fonts - media-fonts/lklug - media-fonts/lohit-fonts - media-fonts/sazanami - ) - ) - alsa? ( ${ALSA_COMMON_DEP} ) - cups? ( ${CUPS_COMMON_DEP} )" - -# Additional dependencies for building: -# zip: extract OpenJDK tarball, and needed by configure -# ant, jdk: required to build Java code -# ecj: required for bootstrap builds -# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present. -# ca-certificates, perl and openssl are used for the cacerts keystore generation -# xext headers have two variants depending on version - bug #288855 -# autoconf - as long as we use eautoreconf, version restrictions for bug #294918 -DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} - || ( - >=dev-java/gcj-jdk-4.3 - dev-java/icedtea-bin:7 - dev-java/icedtea-bin:6 - dev-java/icedtea:7 - dev-java/icedtea:6 - ) - app-arch/cpio - app-arch/unzip - app-arch/zip - app-misc/ca-certificates - >=dev-java/ant-core-1.8.1 - dev-java/ant-nodeps - dev-lang/perl - >=dev-libs/libxslt-1.1.26 - dev-libs/openssl - dev-util/pkgconfig - sys-apps/attr - sys-apps/lsb-release - ${X_DEPEND} - jbootstrap? ( - || ( dev-java/eclipse-ecj dev-java/ecj-gcj ) - )" -# || ( >=sys-devel/autoconf-2.65:2.5 <sys-devel/autoconf-2.64:2.5 )" - -PDEPEND="webstart? ( dev-java/icedtea-web:7 ) - nsplugin? ( dev-java/icedtea-web:7[nsplugin] )" - -# a bit of hack so the VM switching is triggered without causing dependency troubles -JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5" -JAVA_PKG_WANT_SOURCE="1.5" -JAVA_PKG_WANT_TARGET="1.5" - -pkg_setup() { - if use nsplugin && ! use webstart ; then - elog "Note that the nsplugin flag implies the webstart flag. Enable it to remove this message." - fi - - [[ "${MERGE_TYPE}" == "binary" ]] && return #258423 - - # icedtea doesn't like some locales. #330433 #389717 - export LANG="C" LC_ALL="C" - - # 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-7.2.0:7"; then - JAVA_PKG_FORCE_VM="icedtea7" - elif has_version ">dev-java/icedtea-7.2.0:7"; then - JAVA_PKG_FORCE_VM="icedtea-7" - elif has_version "dev-java/icedtea-bin:7"; then - JAVA_PKG_FORCE_VM="icedtea-bin-7" - elif has_version "<=dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6" - elif has_version ">dev-java/icedtea-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-6" - elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea6-bin" - elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then - JAVA_PKG_FORCE_VM="icedtea-bin-6" - elif has_version dev-java/gcj-jdk; then - JAVA_PKG_FORCE_VM="gcj-jdk" - else - die "Unable to find a supported VM for building" - fi - - einfo "Forced vm ${JAVA_PKG_FORCE_VM}" - java-vm-2_pkg_setup - java-pkg-2_pkg_setup - - # For bootstrap builds as the sandbox control file might not yet exist. - addpredict /proc/self/coredump_filter -} - -src_unpack() { - unpack ${ICEDTEA_PKG}.tar.gz -} - -java_prepare() { - # Fix non bootstrap builds with PaX enabled kernels. Bug #389751 - # Move applying test_gamma.patch to before creating boot copy. - if host-is-pax; then - sed -i -e 's|patches/boot/test_gamma.patch||' Makefile.in || die - sed -i -e 's|openjdk-boot|openjdk|g' patches/boot/test_gamma.patch || die - export DISTRIBUTION_PATCHES=patches/boot/test_gamma.patch - fi -} - -src_configure() { - local config bootstrap - local vm=$(java-pkg_get-current-vm) - - if has "${vm}" icedtea7 icedtea-7 icedtea-bin-7; then - use jbootstrap && bootstrap=yes - elif has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then - if use jbootstrap; then - einfo "We can't currently bootstrap with a IcedTea6 JVM :(" - einfo "bootstrap forced off, ignoring use jbootstrap" - fi - elif has "${vm}" gcj-jdk; then - # gcj-jdk ensures ecj is present. - use jbootstrap || einfo "bootstrap forced on for ${vm}, ignoring use jbootstrap" - bootstrap=yes - else - eerror "IcedTea must be built with either a JDK based on GNU Classpath or an existing build of IcedTea." - die "Install a GNU Classpath JDK (gcj-jdk)" - fi - - if [[ ${bootstrap} ]]; then - local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)" - - config="${config} --enable-bootstrap" - config="${config} --with-ecj-jar=${ecj_jar}" - else - config="${config} --disable-bootstrap" - fi - - # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ... - if has "${ARCH}" amd64 sparc x86; then - config="${config} --disable-zero --disable-cacao --disable-jamvm --disable-shark" - - if [[ ${bootstrap} ]]; then - local extra_vms - #if use shark; then - # extra_vms="${extra_vms},shark" - #elif use zero; then - # extra_vms="${extra_vms},zero" - #fi - # CACAO disabled until it has OpenJDK7 support - #if use cacao; then - # extra_vms="${extra_vms},cacao" - # config="${config} --with-cacao-src-zip=${DISTDIR}/${CACAO_TARBALL}" - #fi - if use jamvm; then - extra_vms="${extra_vms},jamvm" - config="${config} --with-jamvm-src-zip=${DISTDIR}/${JAMVM_TARBALL}" - fi - if [[ ${extra_vms} ]]; then - config="${config} --with-additional-vms=${extra_vms#,}" - fi - elif use jamvm; then - ewarn "Can't build additional VMs without bootstrap." - ewarn "Rebuild IcedTea with a JDK that allows bootstrapping." - fi - else - config="${config} --enable-zero --disable-cacao --disable-jamvm --disable-shark" - # local extra_vms - fi - - # OpenJDK-specific parallelism support. Bug #389791, #337827 - # Implementation modified from waf-utils.eclass - # Note that "-j" is converted to "-j1" as the system doesn't support --load-average - local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" ) - config="${config} --with-parallel-jobs=${procs}"; - einfo "Configuring using --with-parallel-jobs=${procs}" - - if use javascript ; then - config="${config} --with-rhino=$(java-pkg_getjar rhino:1.6 js.jar)" - else - config="${config} --without-rhino" - fi - - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \ - --with-corba-src-zip="${DISTDIR}/${CORBA_TARBALL}" \ - --with-jaxp-src-zip="${DISTDIR}/${JAXP_TARBALL}" \ - --with-jaxws-src-zip="${DISTDIR}/${JAXWS_TARBALL}" \ - --with-jdk-src-zip="${DISTDIR}/${JDK_TARBALL}" \ - --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \ - --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_TARBALL}" \ - --with-jdk-home="$(java-config -O)" \ - --with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \ - --disable-jdk-tests \ - $(use_enable !debug optimizations) \ - $(use_enable doc docs) \ - $(use_enable nss) \ - $(use_enable pulseaudio pulse-java) \ - $(use_enable systemtap) -} - -src_compile() { - # Newer versions of Gentoo's ant add - # an environment variable so it works properly... - export ANT_RESPECT_JAVA_HOME=TRUE - - # We try to load the least that's needed to avoid possible classpath collisions - export ANT_TASKS="ant-nodeps" - - # Build and pax mark the intermidiate jdk. #389751 - if host-is-pax; then - emake -j1 icedtea-boot - java-vm_set-pax-markings openjdk.build-boot - fi - - emake -j 1 -} - -src_install() { - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${ED}/${dest}" - dodir "${dest}" - - dodoc README NEWS AUTHORS - dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT} - - cd openjdk.build/j2sdk-image || die - - #402507 - mkdir jre/.systemPrefs || die - touch jre/.systemPrefs/.system.lock || die - touch jre/.systemPrefs/.systemRootModFile || die - - # Don't hide classes - rm lib/ct.sym || die - - # doins can't handle symlinks. - cp -vRP bin include jre lib man "${ddest}" || die - - dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README - - if use doc; then - # java-pkg_dohtml needed for package-list #302654 - java-pkg_dohtml -r ../docs/* || die - fi - - if use examples; then - dodir "${dest}/share"; - cp -vRP demo sample "${ddest}/share/" || die - fi - - # http://www.mail-archive.com/openjdk@lists.launchpad.net/msg06599.html - if use jamvm; then - dosym ${dest}/jre/lib/$(get_system_arch)/jamvm/libjvm.so \ - ${dest}/jre/lib/$(get_system_arch)/libjvm.so - fi - - if use source; then - cp src.zip "${ddest}" || die - fi - - # Fix the permissions. - find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die - - # Needs to be done before generating cacerts - java-vm_set-pax-markings "${ddest}" - - # We need to generate keystore - bug #273306 - einfo "Generating cacerts file from certificates in ${EPREFIX}/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 "${EPREFIX}"/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 - - # OpenJDK7 should be able to use fontconfig instead, but wont hurt to - # install it anyway. Bug 390663 - cp "${FILESDIR}"/fontconfig.Gentoo.properties.src "${T}"/fontconfig.Gentoo.properties || die - eprefixify "${T}"/fontconfig.Gentoo.properties - insinto "${dest}"/jre/lib - doins "${T}"/fontconfig.Gentoo.properties - - set_java_env "${FILESDIR}/icedtea.env" - java-vm_sandbox-predict /proc/self/coredump_filter -} - -pkg_preinst() { - if has_version "<=dev-java/icedtea-7.2.0:7"; then - # portage would preserve the symlink otherwise, related to bug #384397 - rm -f "${EROOT}/usr/lib/jvm/icedtea7" - elog "To unify the layout and simplify scripts, the identifier of Icedtea-7*" - elog "has changed from 'icedtea7' to 'icedtea-7' starting from version 7.2.0-r1" - elog "If you had icedtea7 as system VM, the change should be automatic, however" - elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" - elog "and the same holds for any user VM settings. Sorry for the inconvenience." - fi -} diff --git a/dev-java/icedtea/metadata.xml b/dev-java/icedtea/metadata.xml index bfb9138be585..5cc4329887d0 100644 --- a/dev-java/icedtea/metadata.xml +++ b/dev-java/icedtea/metadata.xml @@ -18,7 +18,6 @@ <flag name="alsa">Make alsa buildtime-only dependency.</flag> <flag name="cups">Make CUPS build-only dependency.</flag> <flag name="hs20">Use the new version of HotSpot (20).</flag> - <flag name="jamvm">Build additionally the JamVM virtual machine.</flag> <flag name="jbootstrap">If possible, recompile the final IcedTea executables with itself.</flag> <flag name="nss">Enable NSS security provider support.</flag> <flag name="nsplugin">Enable browser plugin (NPPlugin), requires also the webstart flag to be enabled.</flag> |