From 87dbafdb50aa4557341e23afdcfe12f4dde5b7ed Mon Sep 17 00:00:00 2001 From: Sebastian Pipping Date: Tue, 2 Sep 2014 23:34:08 +0000 Subject: dev-java/oracle-jdk-bin: 1.8.0.20 (bug #520416) Package-Manager: portage-2.2.12/cvs/Linux x86_64 Manifest-Sign-Key: 0x401A1600 --- dev-java/oracle-jdk-bin/ChangeLog | 9 +- dev-java/oracle-jdk-bin/Manifest | 23 +- .../oracle-jdk-bin/oracle-jdk-bin-1.8.0.20.ebuild | 307 +++++++++++++++++++++ 3 files changed, 330 insertions(+), 9 deletions(-) create mode 100644 dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.20.ebuild (limited to 'dev-java/oracle-jdk-bin') diff --git a/dev-java/oracle-jdk-bin/ChangeLog b/dev-java/oracle-jdk-bin/ChangeLog index d582a8b3b98d..582a3f1ea565 100644 --- a/dev-java/oracle-jdk-bin/ChangeLog +++ b/dev-java/oracle-jdk-bin/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-java/oracle-jdk-bin # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/oracle-jdk-bin/ChangeLog,v 1.71 2014/08/10 19:01:35 sera Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/oracle-jdk-bin/ChangeLog,v 1.72 2014/09/02 23:31:48 sping Exp $ + +*oracle-jdk-bin-1.8.0.20 (02 Sep 2014) + + 02 Sep 2014; Sebastian Pipping + +oracle-jdk-bin-1.8.0.20.ebuild: + Dare to bump to 1.8.0.20 myself (bug #520416); new tool javapackager(1) could + use a closer look *oracle-jdk-bin-1.7.0.67 (10 Aug 2014) diff --git a/dev-java/oracle-jdk-bin/Manifest b/dev-java/oracle-jdk-bin/Manifest index 11cde4a86154..9eab72dd8d7f 100644 --- a/dev-java/oracle-jdk-bin/Manifest +++ b/dev-java/oracle-jdk-bin/Manifest @@ -65,20 +65,27 @@ DIST jdk-8u11-solaris-sparcv9-demos.tar.gz 8699596 SHA256 e0e18a42efc333475ce4bb DIST jdk-8u11-solaris-sparcv9.tar.gz 100806349 SHA256 306d8dc6156a804d1a36e95703ff603d6b41b0b038acab2406468d77f568387f SHA512 9c14e83adec0337b7ae008c41cd2e70c010a2c7296b006514129d28f3703ca0982562a1c4af587fea8dec4f16dba192f7c9a492ca869af010f360d609ee45252 WHIRLPOOL dc0e5f5dcd7b1c0d4b779eb624411a8d6b8b54e6a217eb16d1a1b219cb2092b2d77eaf1c184ae60a1f025177c7a0049ca3285119d4c973059617837c0fb34254 DIST jdk-8u11-solaris-x64-demos.tar.gz 8648420 SHA256 ff8064ed37409d29bc2370423ec2c0eb6691bf78dc1a2a8a5cbe548d6df6011a SHA512 b645fb4dc2e302f1787e6b93393bac8eb5bb91e59c819760f007d13032e262daba2ced8f692f5f0317b7423f9a69fd0a78361db5b0c704e399a7a68600c6d04a WHIRLPOOL a1d9cb308cff107500600b7cea2e128b0610253b4ce2b4f2287ff8fe1507d66d9461390270e5b79a780b364d555fc132f96f23789eb1b51e2fa64419c50a43b2 DIST jdk-8u11-solaris-x64.tar.gz 97704171 SHA256 e07f57ec624b350cddcea7a7240defd7c04688931d04e65512f085cb58df4eb9 SHA512 a57262a7a877db8933c265b3d87a64f4e553529150988bcfd031272b259392193945557557c9b964d859294c663068989a1685cf79e0e10a3dd9da5ed83bfa70 WHIRLPOOL 1666809cdabcb28453af4e6947aa974fe554424ab923a17d100e574ec60a516f6b806ff0069fd97a275625480e6e695514ff3b06984d09b27c0c4659581b9320 +DIST jdk-8u20-linux-i586-demos.tar.gz 61333671 SHA256 0510e4196752a56f6bb7e63fa1d6161127e11f62c69bfc13d7c4472965e503aa SHA512 830adc972000021ee20b0eedbe91c19ffd8b5716e7053c993bce9d56c861d019da7cc438e491f8bf33b318c9bbb973d1a5651154c37cc1227129b58669516546 WHIRLPOOL 4e84534d9739c3cd4c5398dcdd8248a06fc01f4566caadc152cc54b1921c898d7ae3db98692b90f5be649c1d1ac758507ba3048ec7344a34f9f10c789c950739 +DIST jdk-8u20-linux-i586.tar.gz 162389708 SHA256 fa013b3fcbb1308040bf0e75bbd6ef7e8396b547cbc8dd79e3cb8153604bfd06 SHA512 f4183f256cffda1775b9bb2cd19ad240983c887d22488d82e9a5958326174d9d349123dcfd59d3d5976c502696e7b0c6b5815bafd704cd75c4f2ba8ed1327321 WHIRLPOOL 6bc962d7d40bbddc5a8724d4fa487d04e4263379f6ac6d54e2b08775818d75ae537fad2e03efceb1e1ffc05bc4aab8becd43017bc2a329f10cd5551eb9c210f0 +DIST jdk-8u20-linux-x64-demos.tar.gz 61405438 SHA256 5723d4c02e5b6587d3c20fd8a9b954be1d3c754a1d5ac277a7483b25b7c4076d SHA512 198da11cd9bbc6d8f4c9cd1099f5f6c855a5ca677e6526c1e6994a149111e84e10e2a3f8a0d31e5c1e783f620eba61b77f41a1c4f6ff627d2bce3668cbe65f8d WHIRLPOOL 9dc2e80cf351b0d44b0858d28bf196e2cbccd0a2d863e362060e667b03d4be0908bce1c4b5c77157a4481ce897b9b3b3c881295b2c7944b1f0c70f9e31c6cd2d +DIST jdk-8u20-linux-x64.tar.gz 160872342 SHA256 3e717622ae48af5ca7298e7797cb71d4d545238f362741a83e69c097ca055de4 SHA512 a1d4169562ba0c2d849975e10cf69539b6b4562c54d6faee46217e27b704cc048541a686800172b2394bbf579cabfd31a6d1c080c2886b999770e5bf3005464c WHIRLPOOL 1641e94bf84f66fd7df1b1f9d4671388716a907e8ea65ea9001efd184b44b27094b75aecb952a499a3e69cfa0d3db673df35adb62361dd5c3206c7ffa032bca8 +DIST jdk-8u20-macosx-x64.dmg 219267337 SHA256 4d76dfc983ae3413fcc33979d86a454a3e9a2df501d988f74502d5c28cc08d22 SHA512 f9af7d64409e1cb060285a989bfaf5c2335494717795ce2a0cd14d4a215a705ef41fc57a2c8d18e8a7b51cb3a7a0a3fabba667fc5c605997b8362bedc3e6c426 WHIRLPOOL a57bd88b531e417810ed31776811cb17469df6bc996eeb6756f7be8b80710ce0c985fd206c5a914d9d7939da8feeb9d1d7a92c5d4bb103dd3f7e538caca0347e +DIST jdk-8u20-macosx-x86_64-demos.zip 62097691 SHA256 6b08156f461634b136c83e6cfde1b2ec89ef320a87533defc02e2d038e0a80e2 SHA512 ca16f364e5b071b809da12d389f2dde5b3869b7f964ab49f8decebeba7c759bec1fb5de7b5b8337fd53ea78aac23260baea95d7868f09da26d2a1ce191651496 WHIRLPOOL 6cde4d3f4362bc27c3230deaa84f665770ab0d049f53ec226ae06ebd772ddec52c7f998438c5858f9cebbf80a50e1aa6263cdf6c91d200ab032b67523b29b392 +DIST jdk-8u20-solaris-sparcv9-demos.tar.gz 9729357 SHA256 4ac1b0f2e4f3cbb0fa56ba22fbaad54883528ce0057fbcfe55d4a89abec95db9 SHA512 bb0e820ab8489aeed4e8add2db005ed350b8de93e63f7965dbb3fe4c59ac1540c0255d8cd33e315873d49e8e44c95d5ff51189bb70582d5447bbf38ed70a56f7 WHIRLPOOL fc3817cb60c5856cb09f1b5cc85ed70ca93c857a925fba82b9abf737eb0a5d03272f60461c893e9bc544e07d6db115ae295d8ca8a948d09d38c791034425e67a +DIST jdk-8u20-solaris-sparcv9.tar.gz 101808749 SHA256 f7f20fdbcedee02716c82235c1998837552183ba5b95fdecb7add12ba73e3f19 SHA512 8d64bc89fc48974519ac3fd33390e6e5c1016d0412b872c35d319b3d7d1002252704ade2eb41afc63f8729c6f366ee59273bc5b040acbc74a9c4e3fa3ac060bc WHIRLPOOL 7c89a78df0b2c18752cbd01d24824531c75068dd650d47583d1f5f0ff8a15b8385389ed8951edf724b19f52df68aabad3ff4a7e248bfafbf6f80801d52dc95c3 +DIST jdk-8u20-solaris-x64-demos.tar.gz 9671125 SHA256 a9869055dd491e56c2a61940685b6ff392dbfc1dd92341ab06bcdabd4661ac39 SHA512 f72d44815959ecd4949f20882d3b6ee2eafcde5ce083750f36f24be4515416a86af997c986ed1b65fceca82c778f5234a575456cf0516412628b7b65a6364a98 WHIRLPOOL 9070a22aa1e8758044f862ac26c0064d01a8a7813c5ea751840ec950551df3ee7a10da428f0abcb515f54f1b4eb0315c084a5e7bcbaa69a20709a260a8051cfd +DIST jdk-8u20-solaris-x64.tar.gz 98792699 SHA256 155044e3bb1ff986442aecc3b61fcae963cff6d0b463bdf0daebffbe72ecbeb2 SHA512 d81355e2cc7875c857c73158ac3c38fe7d3148e3a52c9c2a38e16a616a55947bcafe7baee772c87daf89e30db28e3f36064b0b44b07f2dac0f6d8fb6f93298c1 WHIRLPOOL 4a4bcaa2fa10289b5d9c148723bf77e2209650dc38b583da62d01bfd26f8b6e8d93a6f98bedea4e9e633e8ed10965f2744e16d4d913c79525e8019fe673008ff EBUILD oracle-jdk-bin-1.7.0.60.ebuild 9910 SHA256 ba9f626a5e86a9860fa995debef6c60b5a0842d6bee5384f7bf64112026fa232 SHA512 1261a52e8dfb9112dab4e5f03b47cdb5552a99fa8929db6f527f937110320da535fc97914d4be655b78b64f82c0c477ab6bd5bb273c34e1aa27a0e289d8bcda8 WHIRLPOOL 0a3424b4d9cc3e10c5649bd3e45774b63b9acaec6cf03bf5dfabd49324487d9a3fba9dd6bb572167ccbf5495a391aeff14feb629fc448880e0315ddd91478cf8 EBUILD oracle-jdk-bin-1.7.0.65.ebuild 10238 SHA256 2afe688118cc875bef74ea53328bf358f83b88b6091d8ef328825d3ef760d90a SHA512 d53382bb21240ccab94f9bb88aabd49f370d50c548c1ec8c2d5c8b37559e581030286f0cd3ffda6e2e7770200e7dfa307e65a725441ccb66071ebffa2c677f56 WHIRLPOOL 17c1c728d405b17fd3981120bd4fb9d2cd5734def072c4b2ea95bcdebafa47d90fabf11695c990af7d870243284f965ddac15ac609dea58e1e4b86425cda5fc1 EBUILD oracle-jdk-bin-1.7.0.67.ebuild 10241 SHA256 3b7700bc6d5980604acd1f1b8733d5d15790a9a803962230af2403e05fea5a27 SHA512 6decde703354818dbece3e19568ca7579d05dcb34da18f63014ffb67556d91f1ad9966a41429ead6924fc889c8c7d1fce7c8d7700e9c47ce21677cfbb134cba8 WHIRLPOOL 625e29a0665ffecb897444d1b6fea6c5949a85990d345b5215366154c1b6f42dfd2a4ee38eca83118b41b9856263f365cfae7aa2c4678f7b8460d5292c54a26d EBUILD oracle-jdk-bin-1.8.0.11.ebuild 10063 SHA256 7857e914a1d0dba0628c1e6ac62a8e20a8600b2d076d29f467aca98d6a8230f0 SHA512 45a6b7859c7ad74b9cac0d48579cc1d7d3cfb90b90b7e54adf3443799b5ceddd475c5910bd016bfd843c92ee13bee6e8a80f1bb7d1444de7aad17aed6945d4f8 WHIRLPOOL 56562f96eafb3b2a3c1b9f830ed9502fce81d82fa9ac665d749c4cc272e50645eae34dd55fe61e9c70f97dda6c1f705acfb0a5e53a97230589a1b67b1c27adc7 -MISC ChangeLog 12611 SHA256 30e3c780460027a20c99e8d04437914d8973f85723e3eeeab4ec5cb832dacebc SHA512 3d35877bf5e7330113a462e8f6a08d70379cb5534e97d1cd144366ed7b6d0fb301b79be6eb97b3700477f735cce191e23fea315617a14d34a108a956ea5017c3 WHIRLPOOL e752a017dcd8a79b2ffc27f16183b4903c3fe5c070a6482442e7696530e6b8ee66e1a6bed8441797a0e910348bfd22a8208c3806315719c4bc79c4b02f935da6 +EBUILD oracle-jdk-bin-1.8.0.20.ebuild 10064 SHA256 9ceb59a67c0a7d0243892acd05e842f3b1f9ceff72881d191e057d0f8228402a SHA512 388370970e372553b58fa7d85f890fd53e07caf3e8d51f6b42375fe0f00c823bd7be2d0ad78291c68f5e5ef5ac400e428cae23e7bbaf39f01359f0098750d80e WHIRLPOOL 9c7205f4575e39fa7818c0e808bf47317dc5695e2764d73c8eb45b78a44ce8b5c5ecca4019294c1bde76e6dd8ee18cb0e457c47e436e5637ee10f16f958e9d45 +MISC ChangeLog 12840 SHA256 cee34b456e221df69dc947372639186941181841f9cfae7e6c709e51b223d8b7 SHA512 ec21d9971eaabb92b7a26c3621881a3d40a3a3805ce438ea13132fcb70c368d9c2b1e253c08354c05955c33dab3450f971cdf7fea2d8bcd546ea6885408b606e WHIRLPOOL e59a197ecbafd6b72d7ce459be566a301af97704388c19f76801da5588435624a858e55e103f8f931810072025cc3094c0d1931e76a7355830824b60979f9174 MISC metadata.xml 519 SHA256 09f12b427ac321fdbb2a0ae4d54259bf2fea4100abe33062bd65f27364ccf30e SHA512 b9d20b3da530304f3b9996411a7a6df83e60645057aef2c6706534ff238889e7ae771fd42ff37fef797df50033ec14edc594450fce73144f5c05d31c57e2ce7e WHIRLPOOL 2a5251448873eb66f624d227e3b203b74ab5f92672390478d5b36120181982a004af801e98008fdd701f15cfc53bd74334a82fa8f519c727791b4b29920510aa -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iQEcBAEBCAAGBQJT58GYAAoJELjwI6Q8XPdaMCIIALoe/vseex8gStbMGc/I7sEp -EJiW4ZjueMflX3RxqayG1PcAhSXRtunTic7F71/mZnIVL9pAYKjf/SP0CJEJErEt -rUGN35F6eHnqjsmcMOVLqKQszyNsmuv/5y4IjsGj8BPX2XNMThJ5s214CdcZ2jPm -wJA4h4ZaZr7LhSRlFI5iiDvgwaqYg5/sCcSs6CL/eo5hm9fa73wSCB+JfhOSwQu+ -ZormrIt1elLTKkPxo/YRs146hkYYcAmPSpKUuf6gxdClmD34doMwIJtqBeZ/ay0p -cMmt4GSHFR+ihewt3Jx7kqixv3o7ez0fRiPLCi1H2h+PtgO6aQXlbVuHpJ1liJc= -=zFHO +iEYEAREIAAYFAlQGU+0ACgkQsAvGakAaFgBKpgCgxkoE9zgoqbpY4gqinFDqOWIt +Lo4An162uzl2CGBi+r6Uz4cjgDzNgna4 +=joNu -----END PGP SIGNATURE----- diff --git a/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.20.ebuild b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.20.ebuild new file mode 100644 index 000000000000..b30fb111846c --- /dev/null +++ b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.20.ebuild @@ -0,0 +1,307 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.20.ebuild,v 1.1 2014/09/02 23:31:48 sping Exp $ + +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 x86 x64-solaris sparc64-solaris x86-macos 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 x86 x64-solaris sparc64-solaris x86-macos 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-arm-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_x86_macos="jdk-${MY_PV}-macosx-x64.dmg" +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-arm-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_x86_macos="jdk-${MY_PV}-macosx-x86_64-demos.zip" +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 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc64-solaris ~x64-solaris" +IUSE="+X alsa aqua derby doc examples +fontconfig jce nsplugin pax_kernel selinux source" + +RESTRICT="fetch strip" +QA_PREBUILT="*" + +COMMON_DEP=" + selinux? ( sec-policy/selinux-java )" +RDEPEND="${COMMON_DEP} + X? ( !aqua? ( + x11-libs/libX11:0 + x11-libs/libXext:0 + x11-libs/libXi:0 + x11-libs/libXrender:0 + x11-libs/libXtst:0 + ) ) + alsa? ( media-libs/alsa-lib:0 ) + doc? ( dev-java/java-sdk-docs:${SLOT} ) + fontconfig? ( media-libs/fontconfig:1.0 ) + !prefix? ( sys-libs/glibc:* )" +# A PaX header isn't created by scanelf, so depend on paxctl to avoid fallback +# marking. See bug #427642. +DEPEND="${COMMON_DEP} + jce? ( app-arch/unzip:0 ) + examples? ( kernel_linux? ( app-arch/unzip:0 ) ) + pax_kernel? ( sys-apps/paxctl:0 )" + +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 + 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 arm ; then + # Special case for ARM soft VS hard float. + #if [[ ${CHOST} == *-hardfloat-* ]] ; then + unpack jdk-${MY_PV}-linux-arm-vfp-hflt.tar.gz + use examples && unpack jdk-${MY_PV}-linux-arm-vfp-hflt-demos.tar.gz + #else + # unpack jdk-${MY_PV}-linux-arm-vfp-sflt.tar.gz + # use examples && unpack jdk-${MY_PV}-linux-arm-vfp-sflt-demos.tar.gz + #fi + use jce && unpack ${JCE_FILE} + elif use x86-macos || 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 + 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} "${S}"/jre/lib/security/ || die + fi +} + +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 + + # 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 + + dodoc COPYRIGHT + dohtml README.html + + 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 + install_mozilla_plugin "${dest}"/jre/lib/${arch}/libnpjp2.so + fi + + if use source ; then + cp -p src.zip "${ddest}" || die + fi + + if use !x86-macos && use !x64-macos ; 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 x86-macos || 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 jfx{media,webkit} \ + javafx_{font,font_t2k,iio} 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 + + # TODO: This reads "jdk1{5,6}", what about "jdk1{7,8}"? + for nlib in jdk1{5,6} ; do + install_name_tool -change \ + /usr/lib/libgcc_s_ppc64.1.dylib \ + $($(tc-getCC) -print-file-name=libgcc_s_ppc64.1.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 +} -- cgit v1.2.3-65-gdbad