diff --git a/dev-java/oracle-jre-bin/ChangeLog b/dev-java/oracle-jre-bin/ChangeLog index fd324f6..ae2a263 100644 --- a/dev-java/oracle-jre-bin/ChangeLog +++ b/dev-java/oracle-jre-bin/ChangeLog @@ -1,7 +1,11 @@ # ChangeLog for dev-java/oracle-jre-bin -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo-x86/dev-java/oracle-jre-bin/ChangeLog,v 1.8 2011/12/18 09:52:17 sera Exp $ + 04 Jan 2014; Mario Fetka metadata.xml, + oracle-jre-bin-1.7.0.45.ebuild: + Rebased ejre to new gentoo ebuild + 26 Oct 2013; Mario Fetka oracle-jre-bin-1.7.0.45.ebuild: use right jre for the arch diff --git a/dev-java/oracle-jre-bin/Manifest b/dev-java/oracle-jre-bin/Manifest index 66f0813..1cdacc1 100644 --- a/dev-java/oracle-jre-bin/Manifest +++ b/dev-java/oracle-jre-bin/Manifest @@ -6,6 +6,7 @@ DIST ejre-7u45-fcs-b15-linux-arm-vfp-hflt-client_headful-26_sep_2013.tar.gz 3611 DIST ejre-7u45-fcs-b15-linux-arm-vfp-hflt-client_headless-26_sep_2013.tar.gz 33008538 SHA256 594d1c68725526bfc7ceed0f407c4fcefe62ccd9789c6cbf4a572c9bcfe8e387 SHA512 68000d49fd954e8587ef8af11ab16e6cfa6b29c32c22078e4513fadeac431a2661d92d6431f5a1357935b1fd424704285d68ac27167083b4594ac899ebe7f5d7 WHIRLPOOL 96ccc931e3ed1cb3c795eb469844ca26ba381c11dd7264e7dfb89121eb401da3b6158521b0e6c1ca016780e5cb832ee995d2ebab7d3b73313a3ca7b70e5ee31b DIST ejre-7u45-fcs-b15-linux-arm-vfp-sflt-client_headful-26_sep_2013.tar.gz 36281417 SHA256 58e73027d7a449fb76c361e6feb496442e591d5eb282c2cfbfd8720d0df15371 SHA512 643e16770c05fed2d88f56f1b01c02e59b4e28a3317400382adccc1152fab08f9c734cff57e142089e72f31dbbd3b81100d5d3b1edf7f465a3b71c0fb196bc4d WHIRLPOOL a47f34e243d565b02d469b8da844a270b21e86aa306670139f36e094c9022329111331d9d8ce4f71c927ecf055847516f5746c21c958e51ee3f7d253bfde1967 DIST ejre-7u45-fcs-b15-linux-arm-vfp-sflt-client_headless-26_sep_2013.tar.gz 33172360 SHA256 f3a8bdbb77af38462492ca58cf6d32407ef33b5098c41a297e86e51e3e77f64d SHA512 f11bca20e9a496024604bbb9541ceb930a85bdaae4c216ab571e55b9679b974255a2316561b431b3f5d8a7f53fda00eae781664651385c1b5308b499ddfc229c WHIRLPOOL 46c6434f95a47e7d71f4105a8545e852357439f408de56f72888345e19be431d8d2c3a4dde91c0d3bf2b859de2ea3705ceaacf0dc284756bc639b5bc008e4c2f -EBUILD oracle-jre-bin-1.7.0.45.ebuild 4241 SHA256 4e47f9c381153108aa5f33537fbf0d1dbf123265fe4d58e95b8159dfaf506b2d SHA512 b8c15e8411b72ae901c2b5efbe51f1fbbae70fbaf7e20061ddf6c60fdb11d3e4b8ff390048154540c6e64bdfae27a9b71fd60d16bef9748ce912abc8e5ffc192 WHIRLPOOL c5cb8925f1ae1752bbafaf3f451315c7d022ab5c6f2c89c93843dce94a3617956d06109092abc6447d3c40e0edaed5d53aa892c53008a3479b0454420839f637 -MISC ChangeLog 2877 SHA256 151a067b4b84563abfb5ca27e3855755b36fcf7193a773bb61696f75c50b0a86 SHA512 8284fa2a4e9b039fa9f40c3f37078c935a2835aac370733e284b2c44175d749e51a49c126e597bc9acbd7d302395408b102db6474e732bdf2f9ae769f84b9eb5 WHIRLPOOL 2d3d55388d0a4ee343f51d295d71647c6bbf8c01ca15389727ca22e05ef1b38999402b78c69342cca4cbdcc4a84ec41ccd4fd3d7c615f41a1444f30673309814 -MISC metadata.xml 374 SHA256 32decb0503e4843bf9157625a4c494955b4c93ccd079bec72da1c374c03b7fa8 SHA512 c55b3500fa8a9e04e33a6917112039b4cfb8539735780f060195bb56d62b0ad400a97f538c7f1525721943e6afcee55a0188ed2c0e209a7b3abf92d31dde055e WHIRLPOOL fb73fb8fde357d8a91b6985921b6d26bfd138db10e18e10e1d37d72f029e11763e3264ea94712b48a41171301a6ca4e550ba47ea81bd35acb4752d2be32774da +DIST ejre-7u45-fcs-b15-linux-i586-headless-26_sep_2013.tar.gz 33111288 SHA256 a8ff26dec2227f04070ba519606412c13fcf2d7f6ab6d92a1152394562f3225e SHA512 10ba9b204ea1a09a6b98a2e7b6bfc3eef27ca0970fa77e125ebf1f79059b24c6bf884a5ebdca65dd56c85d971db34585a1a3dffc36cf6cf5b1a71f997c51cb49 WHIRLPOOL c5e5c19eb9dd1ad3972a94a69a2f8254f0191057b74c0623b28e4e9e3da2458742d26bf19895317534983289bd5aa5bf6d5e9b866c6e428204ed46039816daf7 +EBUILD oracle-jre-bin-1.7.0.45.ebuild 6027 SHA256 1c641236623745127f30078c7c85be8b943f1e495a0c9f08cc89540010d9aea0 SHA512 14c605c4deff7e7893090b1f613f3fca740a989baa9b02ddacda2b5dc6397c9cf330bc917d396eb004c01db28381e78fc98bf67a21f7c33bc48394632f5ea928 WHIRLPOOL 3834b3a4a1e2986ff5d5b443bc01ad2ae14ecde28e2069652a05f093ced4dd59133c68d2f5c4c5302de09953c6d0acdac42a369a0f08f93d5fd9f9887cfc7dbc +MISC ChangeLog 3013 SHA256 4537af0201e0c7422874032457fc86891c3cfabf95cb830f9343e7eae63781f8 SHA512 a6856baa6a4801562f9ddc229af43eb3f4b3ed80267c6340bd771b0465e3b90a6e74577790708bc276d2af305d56422eacc594feccec4f66a61432e88a8d164e WHIRLPOOL fc458d30654fd6777b3cd194be63e308568c55f3e774fca2f81ba7d9be864a80cdb694c46b9c7728e75b3cf4a5e616970ba7f257f354392a808c10dc9a5d54a9 +MISC metadata.xml 446 SHA256 6c1b5ea55c7570c8ebdc2c59ebdd09a50fd3704202ba4d0210e07161d0be2d0f SHA512 4443bb556d293a8a7cc98f5956203b355255820c1d7b3650c75adc04c0c0e10fffd7751f22f2111a2f43c8dc451ba35719a94c25223fad5559d88d9701673ffe WHIRLPOOL 7a6430e9039f2a8d03f5874eea63e980998ee0756a1df4d15cb85f8afafcacc67ccd33b34f3cfe186586ebf7245b5b1760317e2a3cfe0dadd6da693a7e39203e diff --git a/dev-java/oracle-jre-bin/metadata.xml b/dev-java/oracle-jre-bin/metadata.xml index e25017a..b66c4ba 100644 --- a/dev-java/oracle-jre-bin/metadata.xml +++ b/dev-java/oracle-jre-bin/metadata.xml @@ -5,5 +5,6 @@ Oracle Java SE Runtime Environment, Official Binary Distribution Enable Java Cryptographic Extension Unlimited Strength Policy files + Use paxctl to mark the JVM binaries. diff --git a/dev-java/oracle-jre-bin/oracle-jre-bin-1.7.0.45.ebuild b/dev-java/oracle-jre-bin/oracle-jre-bin-1.7.0.45.ebuild index fecb3e3..bf1c720 100644 --- a/dev-java/oracle-jre-bin/oracle-jre-bin-1.7.0.45.ebuild +++ b/dev-java/oracle-jre-bin/oracle-jre-bin-1.7.0.45.ebuild @@ -1,15 +1,13 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/oracle-jre-bin/oracle-jre-bin-1.7.0.2.ebuild,v 1.1 2011/12/18 09:52:17 sera Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/oracle-jre-bin/oracle-jre-bin-1.7.0.45.ebuild,v 1.3 2013/10/19 19:50:38 ago Exp $ -EAPI="4" +EAPI="5" inherit java-vm-2 eutils prefix versionator -UPDATE="$(get_version_component_range 4)" -UPDATE="${UPDATE#0}" -MY_PV="$(get_version_component_range 2)u${UPDATE}" -S_PV="$(get_version_component_range 1-3)_${UPDATE}" +MY_PV="$(get_version_component_range 2)u$(get_version_component_range 4)" +S_PV="$(replace_version_separator 3 '_')" BUILD="15" BUILDDATE="26_sep_2013" @@ -19,9 +17,10 @@ ARMV6_SF_AT="ejre-${MY_PV}-fcs-b${BUILD}-linux-arm-vfp-sflt-client_headless-${BU ARMV6_HF_AT="ejre-${MY_PV}-fcs-b${BUILD}-linux-arm-vfp-hflt-client_headless-${BUILDDATE}${SUFFIX}" ARMV7_SF_AT="ejre-${MY_PV}-fcs-b${BUILD}-linux-arm-vfp-sflt-client_headful-${BUILDDATE}${SUFFIX}" ARMV7_HF_AT="ejre-${MY_PV}-fcs-b${BUILD}-linux-arm-vfp-hflt-client_headful-${BUILDDATE}${SUFFIX}" +X86_AT="ejre-${MY_PV}-fcs-b${BUILD}-linux-i586-headless-${BUILDDATE}${SUFFIX}" # This URIs need updating when bumping! -JRE_URI="http://www.oracle.com/technetwork/java/embedded/overview/getstarted/index.html" +JRE_URI="http://www.oracle.com/technetwork/java/embedded/downloads/javase/index.html" JCE_URI="http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html" JCE_DIR="UnlimitedJCEPolicy" @@ -29,17 +28,20 @@ JCE_FILE="${JCE_DIR}JDK7.zip" DESCRIPTION="Oracle's Java SE Runtime Environment" HOMEPAGE="http://www.oracle.com/technetwork/java/javase/" -SRC_URI="arm? ( ${ARMV5_AT} ${ARMV6_SF_AT} ${ARMV7_SF_AT} ${ARMV6_HF_AT} ${ARMV7_HF_AT} ) +SRC_URI=" + arm? ( ${ARMV5_AT} ${ARMV6_SF_AT} ${ARMV7_SF_AT} ${ARMV6_HF_AT} ${ARMV7_HF_AT} ) + x86? ( ${X86_AT} ) jce? ( ${JCE_FILE} )" -LICENSE="ejre-7" +LICENSE="Oracle-BCLA-JavaSE" SLOT="1.7" -KEYWORDS="~arm" -RESTRICT="fetch strip" -IUSE="X alsa jce" +KEYWORDS="arm x86" +IUSE="X alsa fontconfig jce nsplugin pax_kernel" -DEPEND="jce? ( app-arch/unzip )" -RDEPEND="${DEPEND} +RESTRICT="fetch strip" +QA_PREBUILT="*" + +RDEPEND=" X? ( x11-libs/libXext x11-libs/libXi @@ -48,57 +50,60 @@ RDEPEND="${DEPEND} x11-libs/libX11 ) alsa? ( media-libs/alsa-lib ) + fontconfig? ( media-libs/fontconfig ) !prefix? ( sys-libs/glibc )" - -QA_TEXTRELS_arm=" - opt/${P}/lib/arm/client/libjvm.so - opt/${P}/lib/arm/server/libjvm.so" +# scanelf won't create a PaX header, so depend on paxctl to avoid fallback +# marking. #427642 +DEPEND=" + jce? ( app-arch/unzip ) + pax_kernel? ( sys-apps/paxctl )" S="${WORKDIR}/ejre${S_PV}" pkg_nofetch() { - if use arm; then - AT="${ARMV5_AT} ${ARMV6_AT} ${ARMV7_AT}" + if use x86; then + AT=${X86_AT} + elif use arm; then + AT="${ARMV5_AT} ${ARMV6_SF_AT} ${ARMV6_HF_AT} ${ARMV7_SF_AT} ${ARMV7_HF_AT}" fi - einfo "Please download ${AT} from:" - einfo "${JRE_URI}" - einfo "and move it to ${DISTDIR}" + einfo "Please download '${AT}' from:" + einfo "'${JRE_URI}'" + einfo "and move it to '${DISTDIR}'" if use jce; then - einfo "Also download ${JCE_FILE} from:" - einfo ${JCE_URI} - einfo "and move it to ${DISTDIR}" + einfo "Also download '${JCE_FILE}' from:" + einfo "'${JCE_URI}'" + einfo "and move it to '${DISTDIR}'" fi } src_unpack() { einfo "Unpacking for arch ${CHOST/-*/}" - if [[ ${CHOST/-*/} = "armv5tel" ]]; then + if [[ ${CHOST} = armv5* ]]; then unpack ${ARMV5_AT} - elif [[ ${CHOST/-*/} = "armv6j" ]]; then - if [[ ${CHOST} = *hardfloat* ]] - then + elif [[ ${CHOST} = armv6* ]]; then + if [[ ${CHOST} = *hardfloat* ]]; then unpack ${ARMV6_HF_AT} else unpack ${ARMV6_SF_AT} - fi - elif [[ ${CHOST/-*/} = "armv7a" ]]; then - if [[ ${CHOST} = *hardfloat* ]] - then + elif [[ ${CHOST} = armv7* ]]; then + if [[ ${CHOST} = *hardfloat* ]]; then unpack ${ARMV7_HF_AT} else unpack ${ARMV7_SF_AT} - fi fi + if use jce; then + unpack ${JCE_FILE} + fi } src_prepare() { if use jce; then - mv "${WORKDIR}"/${JCE_DIR} "${S}"/lib/security/ || die + mv "${WORKDIR}"/${JCE_DIR} lib/security/ || die fi } @@ -108,10 +113,18 @@ src_compile() { # see bug #207282 einfo "Creating the Class Data Sharing archives" - if use arm; then - "${S}"/bin/java -client -Xshare:dump || die - fi - #"${S}"/bin/java -server -Xshare:dump || die + case ${ARCH} in + arm) + bin/java -client -Xshare:dump || die + ;; + x86) + bin/java -client -Xshare:dump || die + bin/java -server -Xshare:dump || die + ;; + *) + bin/java -server -Xshare:dump || die + ;; + esac # Create files used as storage for system preferences. mkdir .systemPrefs || die @@ -120,36 +133,74 @@ src_compile() { } src_install() { - dodir /opt/${P} - cp -pPR bin lib "${ED}"/opt/${P} || die + local dest="/opt/${P}" + local ddest="${ED}${dest}" - # Remove empty dirs we might have copied - #rmdir -v $(find "${ED}" -type d -empty) || die - - dodoc COPYRIGHT README THIRDPARTYLICENSEREADME.txt - - if use jce; then - dodir /opt/${P}/lib/security/strong-jce - mv "${ED}"/opt/${P}/lib/security/US_export_policy.jar \ - "${ED}"/opt/${P}/lib/security/strong-jce || die - mv "${ED}"/opt/${P}/lib/security/local_policy.jar \ - "${ED}"/opt/${P}/lib/security/strong-jce || die - dosym /opt/${P}/lib/security/${JCE_DIR}/US_export_policy.jar \ - /opt/${P}/lib/security/ - dosym /opt/${P}/lib/security/${JCE_DIR}/local_policy.jar \ - /opt/${P}/lib/security/ + # We should not need the ancient plugin for Firefox 2 anymore, plus it has + # writable executable segments + if use x86; then + rm -vf lib/i386/libjavaplugin_oji.so \ + lib/i386/libjavaplugin_nscp*.so + rm -vrf plugin/i386 + fi + # Without nsplugin flag, also remove the new plugin + local arch=${ARCH}; + use x86 && arch=i386; + if ! use nsplugin; then + rm -vf lib/${arch}/libnpjp2.so \ + lib/${arch}/libjavaplugin_jni.so fi - # bug #56444 - cp "${FILESDIR}"/fontconfig.Gentoo.properties "${T}"/fontconfig.properties || die - eprefixify "${T}"/fontconfig.properties - insinto /opt/${P}/lib/ - doins "${T}"/fontconfig.properties + dodir "${dest}" + cp -pPR bin lib man "${ddest}" || die - # bug #388127 - dodir /etc/sandbox.d - echo 'SANDBOX_PREDICT="/dev/random:/proc/self/coredump_filter"' > "${D}/etc/sandbox.d/20${VMHANDLE}" + # Remove empty dirs we might have copied + find "${D}" -type d -empty -exec rmdir -v {} + || die + + dodoc COPYRIGHT README + + if use jce; then + dodir ${dest}/lib/security/strong-jce + mv "${ddest}"/lib/security/US_export_policy.jar \ + "${ddest}"/lib/security/strong-jce || die + mv "${ddest}"/lib/security/local_policy.jar \ + "${ddest}"/lib/security/strong-jce || die + dosym "${dest}"/lib/security/${JCE_DIR}/US_export_policy.jar \ + "${dest}"/lib/security/US_export_policy.jar + dosym "${dest}"/lib/security/${JCE_DIR}/local_policy.jar \ + "${dest}"/lib/security/local_policy.jar + fi + + if use nsplugin; then + install_mozilla_plugin "${dest}"/lib/${arch}/libnpjp2.so + fi + + # Install desktop file for the Java Control Panel. + # Using ${PN}-${SLOT} to prevent file collision with jre and or other slots. + # make_desktop_entry can't be used as ${P} would end up in filename. + newicon lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png \ + sun-jcontrol-${PN}-${SLOT}.png || die + sed -e "s#Name=.*#Name=Java Control Panel for Oracle JRE ${SLOT}#" \ + -e "s#Exec=.*#Exec=/opt/${P}/bin/jcontrol#" \ + -e "s#Icon=.*#Icon=sun-jcontrol-${PN}-${SLOT}#" \ + -e "s#Application;##" \ + -e "/Encoding/d" \ + lib/desktop/applications/sun_java.desktop > \ + "${T}"/jcontrol-${PN}-${SLOT}.desktop || die + domenu "${T}"/jcontrol-${PN}-${SLOT}.desktop + + # Prune all fontconfig files so libfontconfig will be used and only install + # a Gentoo specific one if fontconfig is disabled. + # http://docs.oracle.com/javase/7/docs/technotes/guides/intl/fontconfig.html + rm "${ddest}"/lib/fontconfig.* || die + if ! use fontconfig; then + cp "${FILESDIR}"/fontconfig.Gentoo.properties "${T}"/fontconfig.properties || die + eprefixify "${T}"/fontconfig.properties + insinto "${dest}"/lib/ + doins "${T}"/fontconfig.properties + fi set_java_env java-vm_revdep-mask + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter }