summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/oracle-jdk-bin/Manifest14
-rw-r--r--dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.181.ebuild301
2 files changed, 315 insertions, 0 deletions
diff --git a/dev-java/oracle-jdk-bin/Manifest b/dev-java/oracle-jdk-bin/Manifest
index b000a981e8e7..11338094a217 100644
--- a/dev-java/oracle-jdk-bin/Manifest
+++ b/dev-java/oracle-jdk-bin/Manifest
@@ -12,6 +12,20 @@ DIST jdk-8u172-solaris-sparcv9-demos.tar.gz 9794438 BLAKE2B 9498f2cf09619a125280
DIST jdk-8u172-solaris-sparcv9.tar.gz 104179591 BLAKE2B 0d17d4085ba19e5accab1495804799460ef5c327dad603fd8ec00e88558422aa0abbc0b98dc9bd78896eb06745d934c9c784e9697980f8f2fe3533e57d55f0da SHA512 373386058b25abd9f0c6ec3b0de528449e11281e36cdd94f66d7b976d78ccaeb6cf953d41c57552b74f46a21c8ca46489978d82a72748b32d1bc0ad65f2642f9
DIST jdk-8u172-solaris-x64-demos.tar.gz 9760535 BLAKE2B 7c607f6e716f57adf6b51fc6c8061edbe56c8eef732725bd2175209659e2260084d06355a568fdf1ec57ee5b256bb3204e24d5017a9ed2d9d388bb7b5763af1b SHA512 2bfbf248b6b0948ccb17ee7323168ca8760a29dd5980f917cd5414be7ee4b8aa93158a003ba450592be73fa9ebec29a45d85301bf4ed848468adb13ad53b4b08
DIST jdk-8u172-solaris-x64.tar.gz 101774902 BLAKE2B eacd050346e9ed3d939cb8ff79cb1c024e6c0adb6f6677fa348461b5661ea90b8d006d799d63fbfaebc6fd71e25ccd06751fb8dc252f06ec56acfee6f7a1cc21 SHA512 7de041389aac89060091b08aac55d713fb99a7805fce94605e9798bbcc228dbc65db265d9dcbac87953d7c82b9773debb26bbe83301cd8a344233cb7045964e4
+DIST jdk-8u181-linux-arm32-vfp-hflt-demos.tar.gz 9508321 BLAKE2B cd9b5990ab3faf6b2e1bcee6e141062b1996ec56b468370263fd60d908e0fa944eb3565c375dc2d543b63ed4e5552e226461d2834a2eaf26ad0af15d7acf5312 SHA512 6f7a563a7816019db2120f1e1cadfbd7d6098fa3556470ad2c38b04abf1d86a07f893bf369437ec65c031871c071bf678b51eac012537be26bf8437f7458a8a2
+DIST jdk-8u181-linux-arm32-vfp-hflt.tar.gz 76488796 BLAKE2B 444c0c510bcb88a135f3c271e5b224dd1c5d37c42d59afafaef7065090f243649dfb271ce43f0eafd8127f64bda8af7862b821ab6c5cdea1fbf6bef8aa376b53 SHA512 14befd089eeea35cefff6209a57022621431320cf2c4556208cec372a06ca51a6444c42f1fca2322ae8fa5d59cb955778ed20f96f4ba540f9052d1fb84259632
+DIST jdk-8u181-linux-arm64-vfp-hflt-demos.tar.gz 9490529 BLAKE2B 0b4c8385c6cfd0c1e86bafed9195ef76cfcba7368b9f719fcd72e7ed2789b7d9f519d60a6d62cfa3992bed4ffd61f424a6691f3828134f28aca1b22533365a9f SHA512 c4647f4f1ad5147fca48f9a37689517a772894d0bc30279208ae93bd11431196272cad3aff36b15116ce174bd8fa16a88ed5f4b0e264ef48a163f7a2b781c517
+DIST jdk-8u181-linux-arm64-vfp-hflt.tar.gz 73282257 BLAKE2B 8527cec96f7034d603fcc48493811f910630deeac9729a7fcdeeaa2421fe44a793a84bcf3d0fc247eefbe8741fb22b85803b62df6befd064a852da0572a671bf SHA512 91d0abc3832cc9f0ce62af6e7a4cb932647df5d647acbc63b1e4f2b6dddce6633a4b155b73de12adc01e34b1c939dbee1c820a9d52897c325d85f98d913a5193
+DIST jdk-8u181-linux-i586-demos.tar.gz 58239283 BLAKE2B ad52a844559ff9d316ae6098d01b61c7296b9d9d76b36dc6fc7976d8a3376c4f9e796a1ec86e6a2a2c6ca841c18fab9fae7dd2171ee0065337363f7a2d592f35 SHA512 df5dc6bfc5aa9d8c717ca8924bc506488a4fdc7462f0454c716c99db26af1efad543a26314f814cbaf22153a10dcba8e900b37cd6de33ae5198b1350c17ad7e9
+DIST jdk-8u181-linux-i586.tar.gz 188607817 BLAKE2B bd9d1bd5ea3811f591d24f607264068e26d525b1b49a71801e2b8b7fe2e7b92ef901e6c0ba080535d10b206e50500b8d00f806978bcb2ad65ae938e467d20ba4 SHA512 5ffb696e915aa7e15e28f18ed84cc4fb76b421c6fc8638ff1f0683f6bb3d70cbfeecdc23260695ab09d01dc0865a7922104728def0b1bc1a35822c1dc9deb5a7
+DIST jdk-8u181-linux-x64-demos.tar.gz 58308123 BLAKE2B de58df7b19719c7e5ba7044475c39029b0f6c366da80bff19384c0c28212ae4f1886ef024f0f525cb84e913666396c13157120cd6403f86e72e705ff7c0e32cd SHA512 4bcff70450cc919b87be480a653c005c4d8117fd4820387b14099ebcc4347b3b882d004d67aa966ef077a7e6096a5399683753ce4cc2b541b8c65b75b6ecfd79
+DIST jdk-8u181-linux-x64.tar.gz 185646832 BLAKE2B 4e0f1be8eeb6e728d3a75453476cbcbf4ed0d099f055af9815a4663e4bbdb284dfe20208ff38ec5ab0efb4e5eb99d5b4769ba575c0b1bf60dbba37dd8a91041f SHA512 b1944c010356a0642ac1a6b8c041d6125dff71479d9a4707a09519b50341ad7b7b531dc35e454383e9fc0dc0055648da317377ad7645e623dacb56e40b6b1e8e
+DIST jdk-8u181-macosx-x64.dmg 254624361 BLAKE2B b5ca7e7d7bda5b018fe03c8ab39c41fa04f903cd18b83a318eed8f3d7e163de2ad5a96e2cbf15a1e2d682fd814fb35db36567ae213303d201b5375c2921b4521 SHA512 94a103de9642241859857aee6689c203ae74e491c280251a8e7ed6f34ab6ffed19c815607a81f0584c81cda5444318b3d127bdb24e3451fcc43e24ddfd33074f
+DIST jdk-8u181-macosx-x86_64-demos.zip 58763272 BLAKE2B f73fc58b1d4d1a5fdd48370e8cbb9909f49fe988f5770ef678de056496b321890411ae83618771901df4e6ae56b798eec45f8d266a93a010e58900daa2961f1f SHA512 713772b0cb74b95937ab47922a69c0ae4f598816587eaa9a8375ea43063bd9ee711c48fb41e0cc8ccf434c0c7586625f0f51798c0b263ff935d37910e4e8da6e
+DIST jdk-8u181-solaris-sparcv9-demos.tar.gz 8869506 BLAKE2B 518519ee84e7b4b0306233c0a186436554d3bbeeb24250576e4c8e2ea6e714785e1a08d151077065d48563eec3fc5d3f519c7b5e8c112bfe80623f6f2e7a5245 SHA512 80ed05e9453456bcdecf4308599748f1b99e33aa1927cf75bf4933e2e2c02c0216684446c9051bd7f6e8ba73b152d7baf110a5cef59244af1b65bcd7c7eea3ef
+DIST jdk-8u181-solaris-sparcv9.tar.gz 98921065 BLAKE2B ad02fc872bb23c36990c3c4915a7f11beb490559382463852a6db9bbf046f5fa3f4003951c85d8e4b2bc870fa135967b083b125f9a11e3de996b4444e49fbaf5 SHA512 3acc108955b8669cfb83f26512d750ea977fb84cde0f515d791df76a2ea67a0951d0ebb120e00184d542e24678afcac35671d35573b7bb961759d8bf95b1ae91
+DIST jdk-8u181-solaris-x64-demos.tar.gz 8835006 BLAKE2B 32269b2bb6e8b2a6552ce53f666aec820838189c35e0f44491e944150422453a4a4bbaea3824053483a1a116f08365a2a13162fba11f5f632cdb3790d3146943 SHA512 ef27f42a0d9fa0bb8ee289a882e08c9ce1311cc2424439e7d342ef63885cc68cf5464fa7cebc715ad1efffaafeffd55720a121a1cf093fb2fd10bbe6f4a3d7fb
+DIST jdk-8u181-solaris-x64.tar.gz 96580362 BLAKE2B 03007adadcf89d8c0984fab34d6d5b01f0136eaea9a02da7f1afdb1fb4b1544fb04ad2943dcb0dd6da51375f1de3ee3e72e5170697a31b871a8da0d124d1070a SHA512 ecbd9c3fb5d757504186dcad0a9606f2aec6549f2fb3424527dd621618b9726152a7c3168c32eec8f28731e547feab96fa190fc4eacc713f608fe851658d10e0
DIST jdk-9.0.4_linux-x64_bin.tar.gz 354635831 BLAKE2B 6d102ca812c7fcf03b611d95880af51916dde52f09f3a5b972abd6575c73e8cca1855fb50ac00aac3f4643a1e422b5fdb97a746608b5a4235d8664926a061730 SHA512 787addfcf3d4736507ad8fa54b22894a33d39bde01d9d187d5c9f3433b43c9e8b14404a8366d0bc8510faa8936274bbfa304109d3927aa323b3f8a285efaffd6
DIST jdk-9.0.4_osx-x64_bin.dmg 400672048 BLAKE2B 0bcc3643ccbc72cd98aca71823e06fd60068a7e1d72c7ce59f8e4c26bb9461a207f57ef239b244ec05c8f843666f2854b07a5f05841819cfe79ed8fefafb3650 SHA512 34191b5802c2d369f890cb1b563f77ee040b9af6ee4fc8ae81974f46afea675401e2a02803fc4345e11bab1103397dd8b583d68bb81edcdd02902cb3e595cc52
DIST jdk-9.0.4_solaris-sparcv9_bin.tar.gz 217025485 BLAKE2B 6b3d4f4701ff3349f8acce727fcfcb06ce420e54dd32d2e6b91b71aa898a8d6a293375ec2cb0c66f14a5df77a6f5b7016160572b995ad84a593e9d5c6c928184 SHA512 9418a725a33dfbedf7f692abfb92550f23fca594fa8c1b85934d601284261339f177a32af7440e0b09233b2e99b2fd7cef835c54252cec6a645ea322a389de14
diff --git a/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.181.ebuild b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.181.ebuild
new file mode 100644
index 000000000000..a188a558727e
--- /dev/null
+++ b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.181.ebuild
@@ -0,0 +1,301 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit desktop gnome2-utils java-vm-2 prefix versionator
+
+KEYWORDS="-* ~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc64-solaris ~x64-solaris"
+
+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}"
+
+declare -A ARCH_FILES
+ARCH_FILES[amd64]="jdk-${MY_PV}-linux-x64.tar.gz"
+ARCH_FILES[arm]="jdk-${MY_PV}-linux-arm32-vfp-hflt.tar.gz"
+ARCH_FILES[arm64]="jdk-${MY_PV}-linux-arm64-vfp-hflt.tar.gz"
+ARCH_FILES[x86]="jdk-${MY_PV}-linux-i586.tar.gz"
+ARCH_FILES[x64-macos]="jdk-${MY_PV}-macosx-x64.dmg"
+ARCH_FILES[sparc64-solaris]="jdk-${MY_PV}-solaris-sparcv9.tar.gz"
+ARCH_FILES[x64-solaris]="jdk-${MY_PV}-solaris-x64.tar.gz"
+
+for keyword in ${KEYWORDS//-\*} ; do
+ case "${keyword#\~}" in
+ *-linux) continue ;;
+ x64-macos) demo="jdk-${MY_PV}-macosx-x86_64-demos.zip" ;;
+ *) demo=${ARCH_FILES[${keyword#\~}]/./-demos.} ;;
+ esac
+
+ SRC_URI+="
+ ${keyword#\~}? (
+ ${ARCH_FILES[${keyword#\~}]}
+ examples? ( ${demo} )
+ )"
+done
+
+DESCRIPTION="Oracle's Java SE Development Kit"
+HOMEPAGE="http://www.oracle.com/technetwork/java/javase/"
+LICENSE="Oracle-BCLA-JavaSE examples? ( BSD )"
+SLOT="1.8"
+IUSE="alsa commercial cups derby doc examples +fontconfig headless-awt javafx jce nsplugin selinux source visualvm"
+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 )"
+
+DEPEND="app-arch/zip
+ examples? ( x64-macos? ( app-arch/unzip ) )"
+
+S="${WORKDIR}/jdk$(replace_version_separator 3 _ ${S_PV})"
+
+pkg_nofetch() {
+ local a
+ einfo "Please download these files and move them to your distfiles directory:"
+ einfo
+ for a in ${A} ; do
+ [[ ! -f ${DISTDIR}/${a} ]] && einfo " ${a}"
+ done
+ einfo
+ einfo " http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html"
+ einfo
+ einfo "If the above mentioned URL does not point to the correct version anymore,"
+ einfo "please download the file from Oracle's Java download archive:"
+ einfo
+ einfo " http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html"
+ einfo
+}
+
+src_unpack() {
+ if use x64-macos ; then
+ mkdir -p "${T}"/dmgmount || die
+ hdiutil attach "${DISTDIR}"/jdk-${MY_PV}-macosx-x64.dmg \
+ -mountpoint "${T}"/dmgmount || die
+ local jdkgen=$(get_version_component_range 2)
+ local uver=$(get_version_component_range 4)
+ ( cd "${T}" &&
+ xar -xf "${T}/dmgmount/JDK ${jdkgen} Update ${uver}.pkg" \
+ jdk${PV//.}.pkg/Payload ) || die
+ zcat "${T}"/jdk${PV//.}.pkg/Payload | cpio -idv || die
+ hdiutil detach "${T}"/dmgmount || die
+ mv Contents/Home "${S}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ if [[ -n ${JAVA_PKG_STRICT} ]] ; then
+ # Mark this binary early to run it now.
+ pax-mark m ./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 commercial ; then
+ rm -vfr lib/missioncontrol jre/lib/jfr* || 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.*)
+ local nsplugin_link=${nsplugin##*/}
+ nsplugin_link=${nsplugin_link/./-${PN}-${SLOT}.}
+ dosym "${dest}/${nsplugin}" "/usr/$(get_libdir)/nsbrowser/plugins/${nsplugin_link}"
+ 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
+
+ # Prune all fontconfig files so that libfontconfig will be used.
+ rm -v jre/lib/fontconfig.* || die
+
+ # Packaged as dev-util/visualvm but some users prefer this version.
+ use visualvm || find -name "*visualvm*" -exec rm -vfr {} + || die
+
+ # Install desktop file for the Java Control Panel. Using
+ # ${PN}-${SLOT} to prevent file collision with JRE and other slots.
+ if [[ -d jre/lib/desktop/icons ]] ; then
+ local icon
+ pushd jre/lib/desktop/icons >/dev/null || die
+ for icon in */*/apps/sun-jcontrol.png ; do
+ insinto /usr/share/icons/"${icon%/*}"
+ newins "${icon}" sun-jcontrol-${PN}-${SLOT}.png
+ done
+ popd >/dev/null || die
+ make_desktop_entry \
+ "${dest}"/bin/jcontrol \
+ "Java Control Panel for Oracle JDK ${SLOT}" \
+ sun-jcontrol-${PN}-${SLOT} \
+ "Settings;Java;"
+ fi
+
+ 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 && [[ ${A} = *-demos.* ]] ; then
+ cp -pPR demo sample "${ddest}" || die
+ fi
+
+ ln -s policy/$(usex jce unlimited limited)/{US_export,local}_policy.jar \
+ "${ddest}"/jre/lib/security/ || die
+
+ if use source ; then
+ cp -v src.zip "${ddest}" || die
+
+ if use javafx ; then
+ cp -v javafx-src.zip "${ddest}" || die
+ fi
+ fi
+
+ # Only install Gentoo-specific fontconfig if flag is disabled.
+ # https://docs.oracle.com/javase/8/docs/technotes/guides/intl/fontconfig.html
+ if ! use fontconfig ; then
+ insinto "${dest}"/jre/lib/
+ doins "$(prefixify_ro "${FILESDIR}"/fontconfig.properties)"
+ fi
+
+ # Needs to be done before CDS, bug #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
+ local lib
+ for lib in lib{decora_sse,glass,prism_{common,es2,sw}}.dylib ; do
+ ebegin "Fixing self-reference of ${lib}"
+ install_name_tool \
+ -id "${EPREFIX}${dest}"/jre/lib/${lib} \
+ "${ddest}"/jre/lib/${lib} || die
+ eend $?
+ done
+ fi
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+ 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
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ java-vm-2_pkg_postrm
+}