public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "James Le Cuirot" <chewi@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/oracle-jdk-bin/
Date: Mon, 23 Jan 2017 22:52:38 +0000 (UTC)	[thread overview]
Message-ID: <1485211925.090d01d2c01092de8f73720ece3d379ffec7a6c5.chewi@gentoo> (raw)

commit:     090d01d2c01092de8f73720ece3d379ffec7a6c5
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 21 23:04:23 2017 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Jan 23 22:52:05 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=090d01d2

dev-java/oracle-jdk-bin: Bump to 1.8.0.121 wrt security bug #606118

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 dev-java/oracle-jdk-bin/Manifest                   |  14 +
 .../oracle-jdk-bin/oracle-jdk-bin-1.8.0.121.ebuild | 366 +++++++++++++++++++++
 2 files changed, 380 insertions(+)

diff --git a/dev-java/oracle-jdk-bin/Manifest b/dev-java/oracle-jdk-bin/Manifest
index 5368238..0f9974e 100644
--- a/dev-java/oracle-jdk-bin/Manifest
+++ b/dev-java/oracle-jdk-bin/Manifest
@@ -13,3 +13,17 @@ DIST jdk-8u112-solaris-sparcv9-demos.tar.gz 9804200 SHA256 acd7237d7e3efc69d3769
 DIST jdk-8u112-solaris-sparcv9.tar.gz 103876511 SHA256 f01739d94564eced651ea93ce5d98d1ccbb63fa99a4b7a7c3db99d03e30cf475 SHA512 ef4463b8a7e49d4ddf5aa5bca6f279ed4d3fbeca867aecb1f0c30661b8a08bbf1d0a5a8ecddc4f951e8655bb8d936b63090034d09fa7cca3a4012602a7f775c8 WHIRLPOOL f2bd24163c905fc1e800267b4e1d1f4856ceaca409a24b1ba406fa779d5b78917de5bd4acaf54177220d6abd824b33b6e2e351604681e27be13e7b15c2072254
 DIST jdk-8u112-solaris-x64-demos.tar.gz 9755514 SHA256 bbd8e55531ae6b1f6ad759334ffd62c1746912822326915def857351df3a7d95 SHA512 182ed642f76de2e15eba7bb96c09f75d14dfe9bb3b85c881521cda3746b90419eefef3941545f37d3fd81ec98509ae9003f9b419c3277ad58c0ed412b8b07b48 WHIRLPOOL 1007923893b91c0a636b5a710d98d137f34069e875382dc45b79977c6eff4166fcc10f134a9630966247597012668ff6b9dbc532273902175c9ac356b7b3686a
 DIST jdk-8u112-solaris-x64.tar.gz 101560691 SHA256 8adb58456c1860be9e73e28a4d249b478918d331f2dbcbbbac7c558708b8b754 SHA512 f7aeb0c4c8904014e247cf57ff30a53c804f06454f3b7eadfc2b831d59961a35ec29b0a3d1beb7809bf05fed452b898637fd54e2b59d3caccae76cd2fbf4e776 WHIRLPOOL 60967fb1930ce00298a11f4488b9e52a48f2f01fd2df60bffab095c968a5c1f2a383cc454331e6d43d5fab8ed703861783268faa8328fbff55742e542b4bd934
+DIST jdk-8u121-linux-arm32-vfp-hflt-demos.tar.gz 10403176 SHA256 65e4007e4e52a9755e967fe8dd943a0bf5efa6d5658d7575c352d3c9c22aefab SHA512 6db56012e857a0606124a6d519531cfa3151dda3067a873204e2175f19eee9f229733e4656bedd48b9eee11213e97334b03b4069747059cee32cdef31ac03691 WHIRLPOOL 1175bee77955d83133b6e3c76c4171106703aa8e488d55551d53133903d8b2341c6e369b492f7c04bf1669afb30f892709402cae6b21285c52b1790e3c129aa7
+DIST jdk-8u121-linux-arm32-vfp-hflt.tar.gz 81645826 SHA256 134c73db663b1fb0f3d771a383dbea1a7cfeaa00e4d2872e0a6df94d242cf2f6 SHA512 d7074a427bc270dc73ab8a86ea7503aa04554599239b80493ed92b7a216d483190c78b188373947b658e4cc64a0edfa64158607a313a9d19b49efda82c71646b WHIRLPOOL 576e540f4f4f487b4be6d2572a32f8e54b095722785b217c52df6100efe9af69219f831fa21122c2479ad540f1f0757efbc9a8743be3ce4249c9fe7b0926e15f
+DIST jdk-8u121-linux-arm64-vfp-hflt-demos.tar.gz 10425709 SHA256 3a57e4d6bb0e088c3b799f9d95a59b655c9356b6efa2312eec2bbcdc820fa7af SHA512 0aac9333a53147073286aa7d576c21a50ae223f8a7d338a470f0bda664d914500e559338bb8b86c5dae6ce1868569602c01f0a8fc2243a46c6bf01d7c71d52c0 WHIRLPOOL daad0b7a197d1d8f74de2c2af37c0933543626e28361de28354efb138954a8cadd3a79f1fdd02283e510121f1bcedf11c318c6377a0de55be82829a316a07acf
+DIST jdk-8u121-linux-arm64-vfp-hflt.tar.gz 78462931 SHA256 acd84c59aa0c3fa8cfb2e3c51bbd9ebf979b4ed9b5f15b343821c31af2ce3573 SHA512 a1b0469ed6ad51f2d07f2dfad1ed0c2966661b987b819d4321b4c9b6de5f1aa35e02dd2653abb9ef0fcfa33db4820a67d679a3ff8668ca116b26012e19756ed8 WHIRLPOOL cc3f84f377178024d1ef469a8a089a8d00395760ac79899cc7f60593ec4177d9fa22781de0cdf695f3f20a65762ef9c57ee6024cb66b803ad9833fea2a1857a4
+DIST jdk-8u121-linux-i586-demos.tar.gz 55065250 SHA256 42c7c34a3e1db77d49e01c19bfa530924fb70e565add63391fa5bae1ba6ebd60 SHA512 be4d73d6854a7d4568bc1a8d31a01201130fd1751278670a528e8348a678eff0fe5143741018db1f070f55ad3b837c71b7167719899514322720db19b8932ad7 WHIRLPOOL 736f9450bc79526805a586ee52dd98c61c10c28c4f9b19733c0bae2afe5840f461bc126ceca0520ec28998a301cd3fdfc33759dbf3edbe92f25d301f3f7f7fd5
+DIST jdk-8u121-linux-i586.tar.gz 185735871 SHA256 f7d6cf1468c5e71ff097bec0189caccdd8e709a2a88a2c9849ad6200c0f33d4c SHA512 d900343912034a6d454ce8ca2dc5767551c6d14ed96b1297bcab817a73b43775f449b29f2c97cc7e7821543388eefc0d5d5fa130187e0a73813812e87c8e30e5 WHIRLPOOL 6af71bf8d5e7df8c82a6afd8a400d9ba76bdc19c73f3f71abf30cf85e8ec2ab3707f961de64d9b7a0b77940aab6093e39df34331529937cf47030980d8cb8a2e
+DIST jdk-8u121-linux-x64-demos.tar.gz 55097929 SHA256 48f4d19df6fcee93e6ddcd9562c622bf558178eef14440273c266ace3ea97efb SHA512 9bb9e4e18e15055adfd7943da07fb29dfe2a35b39ade1895ab35ccb15611e1675c23ae3ef99312716d2bd8dc31937c12d5f292349538b15fc3c39511d47e966e WHIRLPOOL 0259d5e81e2bf93efb811f6299218e068ea1ef608eb7e23d482541bcfc7f8a1bfab405635196a60488fa94e70b8ab33dda9304497a60d30b995b889921f4f09a
+DIST jdk-8u121-linux-x64.tar.gz 183246769 SHA256 97e30203f1aef324a07c94d9d078f5d19bb6c50e638e4492722debca588210bc SHA512 df5d90a87fff6f71246aab1e63412a0b8d50207784da939fdb09ab547a469d121c6c74a7849628fb4d4f3596658eef31fad4026598862f1a5637a15b37b44648 WHIRLPOOL bce31c3b12fe5ec820d8d7e3af6786365bd3830e92d51669bac314f8be866d2f9827fb2b9753fc62feaf574149d23b97a81ead8f8dae2f0dfea6fd98fb9bbbef
+DIST jdk-8u121-macosx-x64.dmg 234054861 SHA256 82ff2493cd4b9ebdaeb9135abaffc9a37b71d341b007a83f73aa6ff3df1b6a3a SHA512 2f433c8dd2e6575df52343fc438c11bd5ccf2f81d3ef0dcd6047340eeb980ff0d609fbcce08acd237a9751d9b87386c176c1f33a01e502aaf03be7c47ab01082 WHIRLPOOL a6ffc15e99bb7286591fe8e2798080ff59676d7619d519308a9ad649435c8bf56a3cb7f0a612a1cf737314d806d34e0d43f4ac1329ea613b7f3ce2931d18b391
+DIST jdk-8u121-macosx-x86_64-demos.zip 55667576 SHA256 ed3f06213be725545f7238edf39280d2d15d8e493a7fcafb6919287c1f32def0 SHA512 45cefa19fcf9c1c01b2907b3f4943b750f67dc5393968a35421daa7ec10c63020ff94bd50f0f9b20ce4724edfb60e7904eccb55fc9220036e236ae53972b977c WHIRLPOOL 49ebb2d2f891ee37fcf981614d630d8822648eb1afa99ddb32c5bf50cde95a37cf69f09249eafe3746822c37f9a5636c12a6bd349b50f27b41e62cb303d1502b
+DIST jdk-8u121-solaris-sparcv9-demos.tar.gz 9779387 SHA256 8b60ace2690b27c1316b71061884a257e00af1e2e0d6ac337f7806f64dccb9bf SHA512 f9e5a519a1cac824fe9927f3f36ced6e6b7542e04f991982d9404e24fda480aaee8298f7e286598399b4c74eabd112a441d11eafede41cbcb46e86fa4129652c WHIRLPOOL 3cef9d2d02bdba3aeed43d25b99bcd5ac9713492c712480cd909c8d9c88233fb577fc93bdc2dfd9e35fa5016eb58441a7ced2e1b1861dce8b28b2cf0b9675a01
+DIST jdk-8u121-solaris-sparcv9.tar.gz 103886687 SHA256 6c9ff068e2c6e0c0d41cc18b7ac5ec88a4e45285aa2eed3158287df017aecf81 SHA512 da9e4ef64c7721e1e666f54639d6efc0437239cae9ff80ddce59d01030e0421910e143c29d8e81e3e96c6248afd2e0d714f359ccf7862432ad3794287f3aad9e WHIRLPOOL dec5ef0806a518b756a975ec5b008eae571797d50141f5076c4d0ac8b88cd29368adccf51a5d55fdcde6b734732f890de15ec97a94b97fda420113ce1409182e
+DIST jdk-8u121-solaris-x64-demos.tar.gz 9757042 SHA256 e4ebca2fb3166c1b2eeaa55803ce9c68a35e89e5f3bc056aa3f5e8e02c94b4c0 SHA512 4ed348c6b14445fd099b3df153a6df85a2d07bb194fde81ad25253b745c9d86e966b60c6faeff4808bb5e3ab7f4fe1a82f2f7119ecd7b7252fe5c27a31896b03 WHIRLPOOL 5cefbb8cf34f84726ce7bf48bf1875ecd326c29e6e2e693e921189757d512461df79842081700053ad773e7472ca4ffb0f9ca80bcc6738189cb9626f3d23f370
+DIST jdk-8u121-solaris-x64.tar.gz 101604840 SHA256 eb5d6f7d7804b3e8bc6dc46676a017368e402724f9a5747b6145e1e305c9ffa6 SHA512 14983383f94b62396948269a10d662b8adca851706558076c000be3d8352c7c66d3172f9e656e2de230c511d77117944a0cf3114fa467e072ce2f25ad1b7e9fa WHIRLPOOL 70e1a907fa4811db58fed40d42a37121b8700a408e2dc750911aa769fe61647758c1c231b913c131af152581588b0c38098fc10fcbc13c006ea5a7da3dab1f85

diff --git a/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.121.ebuild b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.121.ebuild
new file mode 100644
index 00000000..ad9f0f7
--- /dev/null
+++ b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.121.ebuild
@@ -0,0 +1,366 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils java-vm-2 prefix versionator
+
+# This URIs need to be updated when bumping!
+JDK_URI="http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html"
+JCE_URI="http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html"
+
+# This is a list of archs supported by this update.
+# Currently arm comes and goes.
+AT_AVAILABLE=( amd64 arm arm64 x86 x64-solaris sparc64-solaris x64-macos )
+
+# Sometimes some or all of the demos are missing, this is to not have to rewrite half
+# the ebuild when it happens.
+DEMOS_AVAILABLE=( amd64 arm arm64 x86 x64-solaris sparc64-solaris x64-macos )
+
+if [[ "$(get_version_component_range 4)" == 0 ]] ; then
+	S_PV="$(get_version_component_range 1-3)"
+else
+	MY_PV_EXT="u$(get_version_component_range 4)"
+	S_PV="$(get_version_component_range 1-4)"
+fi
+
+MY_PV="$(get_version_component_range 2)${MY_PV_EXT}"
+
+AT_amd64="jdk-${MY_PV}-linux-x64.tar.gz"
+AT_arm="jdk-${MY_PV}-linux-arm32-vfp-hflt.tar.gz"
+AT_arm64="jdk-${MY_PV}-linux-arm64-vfp-hflt.tar.gz"
+AT_x86="jdk-${MY_PV}-linux-i586.tar.gz"
+AT_x64_solaris="jdk-${MY_PV}-solaris-x64.tar.gz"
+AT_sparc64_solaris="${AT_sparc_solaris} jdk-${MY_PV}-solaris-sparcv9.tar.gz"
+AT_x64_macos="jdk-${MY_PV}-macosx-x64.dmg"
+
+DEMOS_amd64="jdk-${MY_PV}-linux-x64-demos.tar.gz"
+DEMOS_arm="jdk-${MY_PV}-linux-arm32-vfp-hflt-demos.tar.gz"
+DEMOS_arm64="jdk-${MY_PV}-linux-arm64-vfp-hflt-demos.tar.gz"
+DEMOS_x86="jdk-${MY_PV}-linux-i586-demos.tar.gz"
+DEMOS_x64_solaris="jdk-${MY_PV}-solaris-x64-demos.tar.gz"
+DEMOS_sparc64_solaris="jdk-${MY_PV}-solaris-sparcv9-demos.tar.gz"
+DEMOS_x64_macos="jdk-${MY_PV}-macosx-x86_64-demos.zip"
+
+JCE_DIR="UnlimitedJCEPolicyJDK8"
+JCE_FILE="jce_policy-8.zip"
+
+DESCRIPTION="Oracle's Java SE Development Kit"
+HOMEPAGE="http://www.oracle.com/technetwork/java/javase/"
+for d in "${AT_AVAILABLE[@]}"; do
+	SRC_URI+=" ${d}? ( $(eval "echo \${$(echo AT_${d/-/_})}")"
+	if has ${d} "${DEMOS_AVAILABLE[@]}"; then
+		SRC_URI+=" examples? ( $(eval "echo \${$(echo DEMOS_${d/-/_})}") )"
+	fi
+	SRC_URI+=" )"
+done
+unset d
+SRC_URI+=" jce? ( ${JCE_FILE} )"
+
+LICENSE="Oracle-BCLA-JavaSE examples? ( BSD )"
+SLOT="1.8"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc64-solaris ~x64-solaris"
+IUSE="alsa cups derby doc examples +fontconfig headless-awt javafx jce nsplugin pax_kernel selinux source"
+REQUIRED_USE="javafx? ( alsa fontconfig )"
+
+RESTRICT="fetch preserve-libs strip"
+QA_PREBUILT="*"
+
+# NOTES:
+#
+# * cups is dlopened.
+#
+# * libpng is also dlopened but only by libsplashscreen, which isn't
+#   important, so we can exclude that.
+#
+# * We still need to work out the exact AWT and JavaFX dependencies
+#   under MacOS. It doesn't appear to use many, if any, of the
+#   dependencies below.
+#
+RDEPEND="!x64-macos? (
+		!headless-awt? (
+			x11-libs/libX11
+			x11-libs/libXext
+			x11-libs/libXi
+			x11-libs/libXrender
+			x11-libs/libXtst
+		)
+		javafx? (
+			dev-libs/glib:2
+			dev-libs/libxml2:2
+			dev-libs/libxslt
+			media-libs/freetype:2
+			x11-libs/cairo
+			x11-libs/gtk+:2
+			x11-libs/libX11
+			x11-libs/libXtst
+			x11-libs/libXxf86vm
+			x11-libs/pango
+			virtual/opengl
+		)
+	)
+	alsa? ( media-libs/alsa-lib )
+	cups? ( net-print/cups )
+	doc? ( dev-java/java-sdk-docs:${SLOT} )
+	fontconfig? ( media-libs/fontconfig:1.0 )
+	!prefix? ( sys-libs/glibc:* )
+	selinux? ( sec-policy/selinux-java )"
+
+# A PaX header isn't created by scanelf so depend on paxctl to avoid
+# fallback marking. See bug #427642.
+DEPEND="app-arch/zip
+	jce? ( app-arch/unzip )
+	examples? ( x64-macos? ( app-arch/unzip ) )
+	pax_kernel? ( sys-apps/paxctl )"
+
+S="${WORKDIR}/jdk"
+
+check_tarballs_available() {
+	local uri=$1; shift
+	local dl= unavailable=
+	for dl in "${@}" ; do
+		[[ ! -f "${DISTDIR}/${dl}" ]] && unavailable+=" ${dl}"
+	done
+
+	if [[ -n "${unavailable}" ]] ; then
+		if [[ -z ${_check_tarballs_available_once} ]] ; then
+			einfo
+			einfo "Oracle requires you to download the needed files manually after"
+			einfo "accepting their license through a javascript capable web browser."
+			einfo
+			_check_tarballs_available_once=1
+		fi
+		einfo "Download the following files:"
+		for dl in ${unavailable}; do
+			einfo "  ${dl}"
+		done
+		einfo "at '${uri}'"
+		einfo "and move them to '${DISTDIR}'"
+		einfo
+		einfo "If the above mentioned urls do not point to the correct version anymore,"
+		einfo "please download the files from Oracle's java download archive:"
+		einfo
+		einfo "   http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html#jdk-${MY_PV}-oth-JPR"
+		einfo
+	fi
+}
+
+pkg_nofetch() {
+	local distfiles=( $(eval "echo \${$(echo AT_${ARCH/-/_})}") )
+	if use examples && has ${ARCH} "${DEMOS_AVAILABLE[@]}"; then
+		distfiles+=( $(eval "echo \${$(echo DEMOS_${ARCH/-/_})}") )
+	fi
+	check_tarballs_available "${JDK_URI}" "${distfiles[@]}"
+
+	use jce && check_tarballs_available "${JCE_URI}" "${JCE_FILE}"
+}
+
+src_unpack() {
+	if use x64-macos ; then
+		pushd "${T}" > /dev/null
+		mkdir dmgmount
+		hdiutil attach "${DISTDIR}"/jdk-${MY_PV}-macosx-x64.dmg \
+			-mountpoint "${T}"/dmgmount
+		local update=$(get_version_component_range 4)
+		[[ ${#update} == 1 ]] && update="0${update}"
+		xar -xf dmgmount/JDK\ $(get_version_component_range 2)\ Update\ ${update}.pkg
+		hdiutil detach "${T}"/dmgmount
+		zcat jdk1${MY_PV%u*}0${update}.pkg/Payload | cpio -idv
+		mv Contents/Home "${WORKDIR}"/jdk${MY_PV}
+		popd > /dev/null
+		use jce && unpack "${JCE_FILE}"
+	else
+		default
+	fi
+
+	# Upstream is changing their versioning scheme every release around 1.8.0.*;
+	# to stop having to change it over and over again, just wildcard match and
+	# live a happy life instead of trying to get this new jdk1.8.0_05 to work.
+	mv "${WORKDIR}"/jdk* "${S}" || die
+}
+
+src_prepare() {
+	if use jce ; then
+		mv "${WORKDIR}"/${JCE_DIR} jre/lib/security/ || die
+	fi
+
+	if [[ -n ${JAVA_PKG_STRICT} ]] ; then
+		# Mark this binary early to run it now.
+		pax-mark Cm ./bin/javap
+
+		eqawarn "Ensure that this only calls trackJavaUsage(). If not, see bug #559936."
+		eqawarn
+		eqawarn "$(./bin/javap -J-Duser.home=${T} -c sun.misc.PostVMInitHook || die)"
+	fi
+
+	# Remove the hook that calls Oracle's evil usage tracker. Not just
+	# because it's evil but because it breaks the sandbox during builds
+	# and we can't find any other feasible way to disable it or make it
+	# write somewhere else. See bug #559936 for details.
+	zip -d jre/lib/rt.jar sun/misc/PostVMInitHook.class || die
+}
+
+src_install() {
+	local dest="/opt/${P}"
+	local ddest="${ED}${dest#/}"
+
+	# Create files used as storage for system preferences.
+	mkdir jre/.systemPrefs || die
+	touch jre/.systemPrefs/.system.lock || die
+	touch jre/.systemPrefs/.systemRootModFile || die
+
+	if ! use alsa ; then
+		rm -vf jre/lib/*/libjsoundalsa.* || die
+	fi
+
+	if use headless-awt ; then
+		rm -vf {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
+		   {,jre/}bin/{javaws,policytool} \
+		   bin/appletviewer || die
+	fi
+
+	if ! use javafx ; then
+		rm -vf jre/lib/*/lib*{decora,fx,glass,prism}* \
+		   jre/lib/*/libgstreamer-lite.* {,jre/}lib/{,ext/}*fx* \
+		   bin/*javafx* bin/javapackager || die
+	fi
+
+	if ! use nsplugin ; then
+		rm -vf jre/lib/*/libnpjp2.* || die
+	else
+		local nsplugin=$(echo jre/lib/*/libnpjp2.*)
+	fi
+
+	# Even though plugins linked against multiple ffmpeg versions are
+	# provided, they generally lag behind what Gentoo has available.
+	rm -vf jre/lib/*/libavplugin* || die
+
+	dodoc COPYRIGHT
+	dodir "${dest}"
+	cp -pPR bin include jre lib man "${ddest}" || die
+
+	if use derby ; then
+		cp -pPR	db "${ddest}" || die
+	fi
+
+	if use examples && has ${ARCH} "${DEMOS_AVAILABLE[@]}" ; then
+		cp -pPR demo sample "${ddest}" || die
+	fi
+
+	if use jce ; then
+		dodir "${dest}"/jre/lib/security/strong-jce
+		mv "${ddest}"/jre/lib/security/US_export_policy.jar \
+			"${ddest}"/jre/lib/security/strong-jce || die
+		mv "${ddest}"/jre/lib/security/local_policy.jar \
+			"${ddest}"/jre/lib/security/strong-jce || die
+		dosym "${dest}"/jre/lib/security/${JCE_DIR}/US_export_policy.jar \
+			"${dest}"/jre/lib/security/US_export_policy.jar
+		dosym "${dest}"/jre/lib/security/${JCE_DIR}/local_policy.jar \
+			"${dest}"/jre/lib/security/local_policy.jar
+	fi
+
+	if use nsplugin ; then
+		local nsplugin_link=${nsplugin##*/}
+		nsplugin_link=${nsplugin_link/./-${PN}-${SLOT}.}
+		dosym "${dest}/${nsplugin}" "/usr/$(get_libdir)/nsbrowser/plugins/${nsplugin_link}"
+	fi
+
+	if use source ; then
+		cp -v src.zip "${ddest}" || die
+
+		if use javafx ; then
+			cp -v javafx-src.zip "${ddest}" || die
+		fi
+	fi
+
+	if [[ -d jre/lib/desktop ]] ; then
+		# 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 jre/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 JDK ${SLOT}#" \
+			-e "s#Exec=.*#Exec=/opt/${P}/jre/bin/jcontrol#" \
+			-e "s#Icon=.*#Icon=sun-jcontrol-${PN}-${SLOT}#" \
+			-e "s#Application;##" \
+			-e "/Encoding/d" \
+			jre/lib/desktop/applications/sun_java.desktop \
+			> "${T}"/jcontrol-${PN}-${SLOT}.desktop || die
+		domenu "${T}"/jcontrol-${PN}-${SLOT}.desktop
+	fi
+
+	# 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/8/docs/technotes/guides/intl/fontconfig.html
+	rm "${ddest}"/jre/lib/fontconfig.*
+	if ! use fontconfig ; then
+		cp "${FILESDIR}"/fontconfig.Gentoo.properties "${T}"/fontconfig.properties || die
+		eprefixify "${T}"/fontconfig.properties
+		insinto "${dest}"/jre/lib/
+		doins "${T}"/fontconfig.properties
+	fi
+
+	# This needs to be done before CDS - #215225
+	java-vm_set-pax-markings "${ddest}"
+
+	# see bug #207282
+	einfo "Creating the Class Data Sharing archives"
+	case ${ARCH} in
+		arm|ia64)
+			${ddest}/bin/java -client -Xshare:dump || die
+			;;
+		x86)
+			${ddest}/bin/java -client -Xshare:dump || die
+			# limit heap size for large memory on x86 #467518
+			# this is a workaround and shouldn't be needed.
+			${ddest}/bin/java -server -Xms64m -Xmx64m -Xshare:dump || die
+			;;
+		*)
+			${ddest}/bin/java -server -Xshare:dump || die
+			;;
+	esac
+
+	# Remove empty dirs we might have copied.
+	find "${D}" -type d -empty -exec rmdir -v {} + || die
+
+	if use x64-macos ; then
+		# Fix miscellaneous install_name issues.
+		pushd "${ddest}"/jre/lib > /dev/null || die
+		local lib needed nlib npath
+		for lib in decora_sse glass prism_{common,es2,sw} ; do
+			lib=lib${lib}.dylib
+			einfo "Fixing self-reference of ${lib}"
+			install_name_tool \
+				-id "${EPREFIX}${dest}/jre/lib/${lib}" \
+				"${lib}"
+		done
+		popd > /dev/null
+
+		# This is still jdk1{5,6}, even on Java 8, so don't change it
+		# until you know different.
+		for nlib in jdk1{5,6} ; do
+			install_name_tool -change \
+				/usr/lib/libgcc_s_ppc64.1.dylib \
+				/usr/lib/libSystem.B.dylib \
+				"${ddest}"/lib/visualvm/profiler/lib/deployed/${nlib}/mac/libprofilerinterface.jnilib
+			install_name_tool -id \
+				"${EPREFIX}${dest}"/lib/visualvm/profiler/lib/deployed/${nlib}/mac/libprofilerinterface.jnilib \
+				"${ddest}"/lib/visualvm/profiler/lib/deployed/${nlib}/mac/libprofilerinterface.jnilib
+		done
+	fi
+
+	set_java_env
+	java-vm_revdep-mask
+	java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+	java-vm-2_pkg_postinst
+
+	if ! use headless-awt && ! use javafx; then
+		ewarn "You have disabled the javafx flag. Some modern desktop Java applications"
+		ewarn "require this and they may fail with a confusing error message."
+	fi
+}


             reply	other threads:[~2017-01-23 22:52 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-23 22:52 James Le Cuirot [this message]
  -- strict thread matches above, loose matches on Subject: below --
2019-09-20  7:59 [gentoo-commits] repo/gentoo:master commit in: dev-java/oracle-jdk-bin/ Michał Górny
2019-08-18  7:21 Georgy Yakovlev
2019-01-25 10:16 Miroslav Šulc
2019-01-25 10:05 Mikle Kolyada
2019-01-24 22:22 Thomas Deutschmann
2019-01-20  5:26 Georgy Yakovlev
2019-01-17  9:50 Miroslav Šulc
2019-01-17  9:50 Miroslav Šulc
2019-01-17  8:45 Miroslav Šulc
2019-01-16 21:00 Miroslav Šulc
2018-10-26  0:52 Thomas Deutschmann
2018-10-20 17:46 Mikle Kolyada
2018-10-19 14:34 James Le Cuirot
2018-08-18 21:30 James Le Cuirot
2018-08-16  0:39 Thomas Deutschmann
2018-08-14 18:52 James Le Cuirot
2018-08-14  0:50 Mikle Kolyada
2018-08-10 21:02 James Le Cuirot
2018-04-25 20:43 James Le Cuirot
2018-04-24 23:41 Thomas Deutschmann
2018-04-23 20:42 James Le Cuirot
2018-04-23 10:01 Mikle Kolyada
2018-04-22 23:01 James Le Cuirot
2018-02-10 11:11 James Le Cuirot
2018-01-25 11:51 Fabian Groffen
2018-01-23 21:28 James Le Cuirot
2018-01-23 16:41 Agostino Sarubbo
2018-01-21 21:08 Thomas Deutschmann
2018-01-21 16:39 James Le Cuirot
2018-01-21 16:39 James Le Cuirot
2018-01-19 20:34 James Le Cuirot
2018-01-19 20:34 James Le Cuirot
2017-12-10 22:01 Ulrich Müller
2017-10-25 20:05 James Le Cuirot
2017-10-24  7:07 Agostino Sarubbo
2017-10-23 10:41 James Le Cuirot
2017-10-22 20:33 Thomas Deutschmann
2017-10-21 23:20 James Le Cuirot
2017-10-21 23:20 James Le Cuirot
2017-08-18 20:55 James Le Cuirot
2017-08-18 20:25 Thomas Deutschmann
2017-08-01 19:47 James Le Cuirot
2017-07-31 11:40 Tobias Klausmann
2017-07-26 21:18 Patrick McLean
2017-07-21  8:57 Pacho Ramos
2017-07-20 20:02 James Le Cuirot
2017-04-26  9:47 James Le Cuirot
2017-04-26  9:01 Agostino Sarubbo
2017-04-26  9:00 Agostino Sarubbo
2017-04-25 21:13 James Le Cuirot
2017-04-25 21:13 James Le Cuirot
2017-01-24  8:39 Agostino Sarubbo
2017-01-24  8:39 Agostino Sarubbo
2017-01-23 22:52 James Le Cuirot
2017-01-23 22:52 James Le Cuirot
2017-01-23 22:52 James Le Cuirot
2017-01-23 22:52 James Le Cuirot
2017-01-23 22:52 James Le Cuirot
2016-10-19 12:49 James Le Cuirot
2016-10-19 10:28 Agostino Sarubbo
2016-10-19 10:26 Agostino Sarubbo
2016-10-19 10:17 James Le Cuirot
2016-07-28 14:27 James Le Cuirot
2016-07-28 14:08 Agostino Sarubbo
2016-07-28  8:43 Agostino Sarubbo
2016-07-27 22:19 James Le Cuirot
2016-07-16 12:57 Patrice Clement
2016-04-21 20:33 James Le Cuirot
2016-04-21 10:22 Agostino Sarubbo
2016-04-21 10:21 Agostino Sarubbo
2016-04-20 21:39 James Le Cuirot
2016-04-17 22:09 James Le Cuirot
2016-03-26 16:33 James Le Cuirot
2016-03-26 16:03 Agostino Sarubbo
2016-03-26 16:02 Agostino Sarubbo
2016-03-25 22:34 James Le Cuirot
2016-03-25 22:34 James Le Cuirot
2016-02-14  9:06 Fabian Groffen
2016-02-13 16:38 James Le Cuirot
2016-02-13 15:42 Agostino Sarubbo
2016-02-13 15:42 Agostino Sarubbo
2016-02-09 22:19 James Le Cuirot
2016-01-27 10:10 Fabian Groffen
2016-01-22 13:43 James Le Cuirot
2016-01-21 14:48 James Le Cuirot
2016-01-21 14:26 Agostino Sarubbo
2016-01-21 14:26 Agostino Sarubbo
2016-01-21 13:54 James Le Cuirot
2016-01-14 14:31 Fabian Groffen
2016-01-01 22:50 James Le Cuirot
2015-10-22  9:29 James Le Cuirot
2015-10-22  7:33 Agostino Sarubbo
2015-10-22  7:33 Agostino Sarubbo
2015-10-21 21:48 James Le Cuirot
2015-10-21 21:48 James Le Cuirot
2015-09-12 13:57 James Le Cuirot
2015-09-09  9:05 James Le Cuirot
2015-09-06 21:00 James Le Cuirot
2015-08-31 22:43 James Le Cuirot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1485211925.090d01d2c01092de8f73720ece3d379ffec7a6c5.chewi@gentoo \
    --to=chewi@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox