From: Ralph Sennhauser Date: Mon, 21 Nov 2011 13:26:03 +0000 (+0000) Subject: Use java-vm-2.eclass to set PaX markings X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=da723647ce57dce79083099e8898ea14b5938ede;p=gentoo.git Use java-vm-2.eclass to set PaX markings Package-Manager: portage-2.1.10.35/cvs/Linux x86_64 --- diff --git a/dev-java/sun-jdk/ChangeLog b/dev-java/sun-jdk/ChangeLog index 0e67bc97fd8b..978e38695d55 100644 --- a/dev-java/sun-jdk/ChangeLog +++ b/dev-java/sun-jdk/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for dev-java/sun-jdk # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jdk/ChangeLog,v 1.311 2011/11/18 22:11:13 sera Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jdk/ChangeLog,v 1.312 2011/11/21 13:26:03 sera Exp $ + +*sun-jdk-1.6.0.29-r1 (21 Nov 2011) + + 21 Nov 2011; Ralph Sennhauser +sun-jdk-1.6.0.29-r1.ebuild: + Use java-vm-2.eclass to set PaX markings 18 Nov 2011; Ralph Sennhauser sun-jdk-1.6.0.29.ebuild: Add missing pax markings for x86. Bug 389751 diff --git a/dev-java/sun-jdk/Manifest b/dev-java/sun-jdk/Manifest index af1d86add443..0f88bb34fef4 100644 --- a/dev-java/sun-jdk/Manifest +++ b/dev-java/sun-jdk/Manifest @@ -10,6 +10,7 @@ DIST jdk-6u29-linux-i586.bin 85146345 RMD160 fca7a51bf14486a81a684c91152493e8af6 DIST jdk-6u29-linux-x64.bin 85411605 RMD160 7bb1433728c9d263bfe9d968595aac7d73e6c2f3 SHA1 45286e11864285c0d9d5cafd0355dbe04d272951 SHA256 a8603fa62045ce2164b26f7c04859cd548ffe0e33bfc979d9fa73df42e3b3365 EBUILD sun-jdk-1.6.0.26.ebuild 5148 RMD160 bf671e5810cb4225217bbd6e5afb68e5d146f9f5 SHA1 07c7bda810d9a68c01e76712fd7d41179caae6cc SHA256 16b560b7693ffa7d61c30aae5c9e8394e07bf2b69dcb0cb55ef536d708d87366 EBUILD sun-jdk-1.6.0.27.ebuild 5658 RMD160 a5600317f7109655bd4a27da34031db2265fe73e SHA1 ab33d4ad61cc35ea7da4d2cccb03debd812dd9d4 SHA256 7ac9e07da2f41bced38f7752fb48bc9e82de9bc371855778b3cce18fb692f0db +EBUILD sun-jdk-1.6.0.29-r1.ebuild 4471 RMD160 22aa825ed3ecd5481564a13dfee6cf564c063362 SHA1 9058c378c5926ae3ff30b225ba90f355350c51fa SHA256 a527d713a64b2f1cbe7c49d03816d43fa092107d8bedf9369f0a705737aecd06 EBUILD sun-jdk-1.6.0.29.ebuild 4645 RMD160 1d22065eeef6f8b1a9824c056badd9621acec098 SHA1 1099e676a61847bc4a9d8458ab7378f6cdc1ee11 SHA256 2992ec2784417e44ed67100b56de9bdd73e759b1cab63dfe24cf265fb9077e5f -MISC ChangeLog 57360 RMD160 d5c6b9fe55cdac090b947e9e8e04b74ad9578bf3 SHA1 1ab148749d1e1bc843f64df4e89f21fc1f6716af SHA256 8ef795517b0bd4682870f2d0204d5ac1f1e21ae323a10d7b57c3e059618637f3 +MISC ChangeLog 57519 RMD160 8a30971bc032b962d6a20b4f086eb4c924460311 SHA1 9474ac39783aaa69abf07965b667cc7b0ff29441 SHA256 2c4e8df9e49ed4e420288c2feb4b5b1939075ec5dbd667fc0d23dc2f8367e747 MISC metadata.xml 429 RMD160 e6edae84d0d56c48e9d6e631d1f0612535f26f2d SHA1 4b6faf61f3869bbbccc405c7c07932dd630737ea SHA256 2fef8162216b2e78806cdc6ba5b0ff2619a482aa3ce0ecf909ffa17ba309428c diff --git a/dev-java/sun-jdk/sun-jdk-1.6.0.29-r1.ebuild b/dev-java/sun-jdk/sun-jdk-1.6.0.29-r1.ebuild new file mode 100644 index 000000000000..2de98c333d39 --- /dev/null +++ b/dev-java/sun-jdk/sun-jdk-1.6.0.29-r1.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jdk/sun-jdk-1.6.0.29-r1.ebuild,v 1.1 2011/11/21 13:26:03 sera Exp $ + +EAPI="4" + +inherit java-vm-2 eutils prefix versionator + +MY_PV="$(get_version_component_range 2)u$(get_version_component_range 4)" +S_PV="$(replace_version_separator 3 '_')" + +X86_AT="jdk-${MY_PV}-linux-i586.bin" +AMD64_AT="jdk-${MY_PV}-linux-x64.bin" + +# check the URIs when bumping, no idea about their stability yet +JDK_URI="http://www.oracle.com/technetwork/java/javase/downloads/jdk-${MY_PV}-download-513648.html" + +DESCRIPTION="Oracle's Java SE Development Kit" +HOMEPAGE="http://www.oracle.com/technetwork/java/javase/" +SRC_URI="x86? ( ${X86_AT} ) + amd64? ( ${AMD64_AT} )" + +LICENSE="Oracle-BCLA-JavaSE" +KEYWORDS="~amd64 ~x86" +SLOT="1.6" +IUSE="X alsa derby doc examples jce nsplugin" + +RESTRICT="fetch strip" +QA_TEXTRELS_x86=" + opt/${P}/jre/lib/i386/client/libjvm.so + opt/${P}/jre/lib/i386/motif21/libmawt.so + opt/${P}/jre/lib/i386/server/libjvm.so" + +RDEPEND="${DEPEND} + doc? ( dev-java/java-sdk-docs:1.6.0 ) + !prefix? ( sys-libs/glibc ) + alsa? ( media-libs/alsa-lib ) + X? ( + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXtst + x11-libs/libX11 + )" +DEPEND="jce? ( dev-java/sun-jce-bin:1.6 )" + +S="${WORKDIR}/jdk${S_PV}" + +pkg_nofetch() { + if use x86; then + AT=${X86_AT} + elif use amd64; then + AT=${AMD64_AT} + fi + + einfo "Due to Oracle no longer providing the distro-friendly DLJ bundles, the package has become fetch restricted again." + einfo "Alternatives are switching to dev-java/icedtea-bin:6 or the source-based dev-java/icedtea:6" + + einfo "Please download ${AT} from:" + einfo "${JDK_URI}" + einfo "and move it to ${DISTDIR}" +} + +src_unpack() { + sh "${DISTDIR}"/${A} -noregister || die "Failed to unpack" +} + +src_compile() { + # This needs to be done before CDS - #215225 + java-vm_set-pax-markings "${S}" + + # see bug #207282 + einfo "Creating the Class Data Sharing archives" + if use x86; then + "${S}"/bin/java -client -Xshare:dump || die + fi + "${S}"/bin/java -server -Xshare:dump || die +} + +src_install() { + # We should not need the ancient plugin for Firefox 2 anymore, plus it has + # writable executable segments + if use x86; then + rm -vf {,jre/}lib/i386/libjavaplugin_oji.so \ + {,jre/}lib/i386/libjavaplugin_nscp*.so + rm -vrf jre/plugin/i386 + fi + # Without nsplugin flag, also remove the new plugin + local arch=${ARCH}; + use x86 && arch=i386; + if ! use nsplugin; then + rm -vf {,jre/}lib/${arch}/libnpjp2.so \ + {,jre/}lib/${arch}/libjavaplugin_jni.so + fi + + dodir /opt/${P} + cp -pPR bin include jre lib man src.zip "${ED}"/opt/${P} || die + + if use derby; then + cp -pPR db "${ED}"/opt/${P} || die + fi + + if use examples; then + cp -pPR demo sample "${ED}"/opt/${P} || die + fi + + # Remove empty dirs we might have copied + rmdir -v $(find "${D}" -type d -empty) || die + + dodoc COPYRIGHT + dohtml README.html + + if use jce; then + dodir /opt/${P}/jre/lib/security/strong-jce + mv "${ED}"/opt/${P}/jre/lib/security/US_export_policy.jar \ + "${ED}"/opt/${P}/jre/lib/security/strong-jce || die + mv "${ED}"/opt/${P}/jre/lib/security/local_policy.jar \ + "${ED}"/opt/${P}/jre/lib/security/strong-jce || die + dosym /opt/sun-jce-bin-1.6.0/jre/lib/security/unlimited-jce/US_export_policy.jar \ + /opt/${P}/jre/lib/security/US_export_policy.jar + dosym /opt/sun-jce-bin-1.6.0/jre/lib/security/unlimited-jce/local_policy.jar \ + /opt/${P}/jre/lib/security/local_policy.jar + fi + + if use nsplugin; then + install_mozilla_plugin /opt/${P}/jre/lib/${arch}/libnpjp2.so + fi + + # Install desktop file for the Java Control Panel. Using VMHANDLE as file + # name to prevent file collision with jre and or other slots. + [[ -f "${ED}"/opt/${P}/jre/lib/desktop/applications/sun_java.desktop ]] || die + sed -e "s/\(Name=\)Java/\1 Java Control Panel for Oracle JDK ${SLOT} (sun-jdk)/" \ + -e "s#Exec=.*#Exec=/opt/${P}/jre/bin/jcontrol#" \ + -e "s#Icon=.*#Icon=/opt/${P}/jre/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png#" \ + "${ED}"/opt/${P}/jre/lib/desktop/applications/sun_java.desktop > \ + "${T}"/${VMHANDLE}.desktop + + domenu "${T}"/${VMHANDLE}.desktop + + # bug #56444 + cp "${FILESDIR}"/fontconfig.Gentoo.properties-r1 "${T}"/fontconfig.properties || die + eprefixify "${T}"/fontconfig.properties + insinto /opt/${P}/jre/lib/ + doins "${T}"/fontconfig.properties + + set_java_env "${FILESDIR}/${VMHANDLE}.env-r1" + java-vm_revdep-mask +}