diff options
Diffstat (limited to 'dev-java/openjdk')
-rw-r--r-- | dev-java/openjdk/Manifest | 6 | ||||
-rw-r--r-- | dev-java/openjdk/openjdk-11.0.23_p9-r1.ebuild | 311 | ||||
-rw-r--r-- | dev-java/openjdk/openjdk-17.0.11_p9.ebuild | 320 | ||||
-rw-r--r-- | dev-java/openjdk/openjdk-8.412_p08.ebuild | 283 |
4 files changed, 0 insertions, 920 deletions
diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest index fd01b11f277f..979c66e2ad03 100644 --- a/dev-java/openjdk/Manifest +++ b/dev-java/openjdk/Manifest @@ -6,12 +6,9 @@ AUX openjdk-8.402_p06-0004-Fix-misc.-warnings.patch 3075 BLAKE2B 8da8de4830a4545 AUX openjdk-8.env.sh 687 BLAKE2B 4bb851545955fafa6a4b08f2589fa9a5441ef37484eb21ac5db06cde111d325903e70b5b7473659973a0bab972386c8f33ded1da57858fdca325cfa29b1122f5 SHA512 a43fc0fcf57108350235d47d6da65a12fb9f77f12f6163c649ceceacb3317c6a25516efa060efe129b74138a529945163343e5a7d1de2b7af36f6580054ed5e5 AUX openjdk.env.sh 432 BLAKE2B 8779a373af2f9e52473cb5e3bc2bbcb7fa83c6d09382d498466888dd322299adc1b736c6e3723fa68e92a80067599228b3511cc2826e1ebc3c5845a7a2f62fa3 SHA512 e6604a88fb857945a618e4b7735d49dbc23bdd4c6fb70fc5753470e9c1047825208a40fe25107bcde95f290656b44f92e1667ebc414454cbae2e71f16fec5fbd DIST openjdk-11.0.18-riscv.patch.xz 272672 BLAKE2B b079612032a5bf135b05bdd1da16f2823772a5d9a18447a435f191daf78c5429a15c2e9ea64758dc9b26ee2a88275532b4f27714b2a7e4489f920c0ed2f5003b SHA512 c0426f243c5aa581d90366cb01ce811e34883a9d8a0298cab420378470e8eb427a56932ca1fbb5ed57e7430be2b38c6bc4491028ebaa25be0a938ba0bb2baf45 -DIST openjdk-11.0.23_p9.tar.gz 116316363 BLAKE2B a3745b2afe9d2529daf89aceed43025aca72a353210b0987aacb32af971262077411e9a2b6cfd938ca9d0c93c8762759b9207a13cee0808288674671164e3a36 SHA512 3851063289042ed467a9cb636eba7170a0feeaa3e5d19bda6c30a186ea624e4ae1b308006652acb9c9820c2065382bd719ee130b7a1a0524fe25ecd639f8a51d DIST openjdk-11.0.24_p8.tar.gz 116418943 BLAKE2B cb768b202b42f426f4edaead16ba09800d86c10da4a664176842ee396332284d410191a55dbb35d7604272231e5b3daf8a75ddc03bb819d670622b7682eec7f6 SHA512 ce45efd934b9bacc56c468d92083a85de311b4436a519ae1d6038aff025c2fa8a811abca4cdd99aeb8c09455effff53500f96c287976cd2ae90d4e11da2385a3 -DIST openjdk-17.0.11_p9.tar.gz 106574173 BLAKE2B 3db4763527d1acb83a2d492c3e94dc571065b844cf2ac56b7377a821cf2cb48af405b9fef73f477502bedc2c119ac57a115315140af04d51dbab5a78dfa6c789 SHA512 77baa3ec3ff2d06b28121342357311d1d5ca2ddd9ac7982b1aa5fc745b49519d2f95d14226ad4ac413d9a0ecf0e49d15078cabbba0b2897d0c6883b92ef0b5e9 DIST openjdk-17.0.12_p7.tar.gz 106597045 BLAKE2B f0e9baec472ecefbf28359abfc10757dc7cb2a6ddf8428086a6565831f1c13ee1a7cdb87b67d6b3840860ddbf2c74e80ece55f09238fddc2cb8fa77208695b9b SHA512 cc99e9742123f7d8ac7ad78abab0fbe5cff37999b9c06ad14851009a95c9868968e97dd0f3e4dea8bfa8578f8f903fccaa37134466a778375cdf24344138f1fc DIST openjdk-21.0.4_p7.tar.gz 112506384 BLAKE2B d58636bc9221d56afcf118a91e41326d2e086c9fe22675429ec50d0b62fefd9e2040140a9d99682547e8bf0d40fa4ca2cbcdf8be55b9a0556b95c90fc0a08d56 SHA512 507524d842fb7c371cf7d3163cdce87e9266d613998b797f2828178b35c087354ae30941384d5afd1d6e3982eddf5c9067553bc2b918a9e223b93893f7f27e76 -DIST openjdk-8.412_p08.tar.gz 93003614 BLAKE2B 71a3825bf69bb196ae219f5125e8452f634be2ff7b9f42a4829f6581f0a143bfec95013971c6f6b8f402c11efa34443f55a7f89d4133eac0b05a6d1cd6e0324d SHA512 d198f26474a4bd0b5e09c3c3aa53fbf77f217b8cd23499f7e661224048e925e0e020b28264b6ce7401baf83f8ffd8e3247788e2f5e7188509dea8b06f9fa0572 DIST openjdk-8.422_p05.tar.gz 93034877 BLAKE2B 2489fea62fbc5a7e3735055656ae89c67caf63e5bc6d5385ee811d0707d056bc3d10dd83f7eae5a5a86b7f57b8da47a9c1a77405f127b6f506bbf3b310ecd2ae SHA512 706db67f9be7509380e96ae2187bdb928e40c4382fd7073dd310da2981eeff324a5871702b087d4466911dbbea8376d5f9fed7029562ca62c9a1a193d931833e DIST openjdk-bootstrap-11.0.13_p8-ppc64.tar.xz 108215404 BLAKE2B 5e6c0b905b34b437137922b73a9724da96b8832186fea945f8c73d941db822ca1cc5718f3ecb4607ed98d1f8241c9f365b54caaf978863e8b84680a94f067b5d SHA512 732e2220219d42be10589fcaf2420da87ebc8564b4afc6bd02f61f31cdca9c31b339366e34d374fb814499b92f8aa796435a18f28e10c8cb00d9a0f5953bb60e DIST openjdk-bootstrap-11.0.13_p8-x86.tar.xz 105420236 BLAKE2B d3137ad497937a9a04dedf38776f3ac45bf3b115d275991fd8582b72ade48390b6aa8ad89e0b4d34fa6a787a3c413dab20b32ef347dc8733544e810150c55d29 SHA512 f71a7ef8fbf19b0595dd7d4ebe52bbe1c95b8c17f34d092472c5f5ce8caf52a053f22db8587f1649f9a96ad01c0c632be343342812f5a8cc4ff843b33b8d9b0f @@ -24,11 +21,8 @@ DIST openjdk-bootstrap-21.0.0_p35-ppc64.tar.xz 125375264 BLAKE2B 28802995f393dc7 DIST openjdk-bootstrap-21.0.0_p35-x86.tar.xz 120906212 BLAKE2B c3a56f4e51a8aca1c318b9c32bebdb4c09e42d80416ce1843bc80077f09466b7f54627ab6992f9149fdabdb4d5557c3cad6b5e93b37ba3d89d84f736fc07a57a SHA512 40f0cf60adaebd0c6ae11badb6b71727a5cc64c89077731b0f7cc82f203297b9b780ae43ec74eca9dd5a64de1209f519c2ad0f9083c017cf474d1020206f762c DIST openjdk-bootstrap-8.402_p06-ppc64.tar.xz 34476368 BLAKE2B 1f896772f5e40a2793c5d9294e65e429c94204f91e91bfd76ff780e1d6318741c2052c3f20e59abcfb7018924983b5c9f386f14f912660e3e86296185f348482 SHA512 7bace068c5ac7604ad9db3ed655a52a4a90195efbf2fc342389cf7929d82d3f7b861fe700c16f513599bf9c064a87c9aa5966d7bd45aa7ed5e55ec317667be6a DIST openjdk-bootstrap-8.402_p06-x86.tar.xz 37076244 BLAKE2B bd50f84e8ac2ee9850c158c7e7d9fae9741112230dcd6e314163911921d63e3222cd3f4ab9d08bbaacbf6d9bfce9a1a9336e21088fba6396613489a701b30797 SHA512 fe5719e0bbf9bcd6eb9790ebd4da34e7f6c99fe4b7d41de2b5d00b20ebe76a77d857c726d1a71b7f40657ca2a9aa08eaa9efc1ab4be60016f66af95530b454b5 -EBUILD openjdk-11.0.23_p9-r1.ebuild 8834 BLAKE2B e10c23f599ce193c329bdd95cf9965704da9951d7eda2521606e4250f9046fa9d66234fe6858c89b9d7849d1bcf687e53f73f629594c54ffeea5ce864af12f5c SHA512 3521115c2cd51c586652dfd53b759cb22028f30b82ccead407d60f2f7f8df096b55a3c9e2b345a723487dac9707471c779d70fad236e961449122290680d7855 EBUILD openjdk-11.0.24_p8.ebuild 8834 BLAKE2B e10c23f599ce193c329bdd95cf9965704da9951d7eda2521606e4250f9046fa9d66234fe6858c89b9d7849d1bcf687e53f73f629594c54ffeea5ce864af12f5c SHA512 3521115c2cd51c586652dfd53b759cb22028f30b82ccead407d60f2f7f8df096b55a3c9e2b345a723487dac9707471c779d70fad236e961449122290680d7855 -EBUILD openjdk-17.0.11_p9.ebuild 9254 BLAKE2B e8fe5423eeb601c2d360041ff68e206d47a9e303c0343e7981fbe14160fce5f805059e57f5a4253c8fea9dd1b2caf7c3c7f2ace4bde2700c97708a38b6999b3d SHA512 0fd70e8c691ff8eaeea3b8c2e722a220d1f978c704fde47431d8893e1d423a36c11a1e364b4eca69dae653dc68cd3c77bb30e0499468af69980b4e4bb7f3f90f EBUILD openjdk-17.0.12_p7.ebuild 9254 BLAKE2B e8fe5423eeb601c2d360041ff68e206d47a9e303c0343e7981fbe14160fce5f805059e57f5a4253c8fea9dd1b2caf7c3c7f2ace4bde2700c97708a38b6999b3d SHA512 0fd70e8c691ff8eaeea3b8c2e722a220d1f978c704fde47431d8893e1d423a36c11a1e364b4eca69dae653dc68cd3c77bb30e0499468af69980b4e4bb7f3f90f EBUILD openjdk-21.0.4_p7.ebuild 9222 BLAKE2B a99c8167af247502103af8adccc900ee8cf2a426eb62b506fd44369de32a63b48e22081112de3c65b9b07287a8bd5225d2e87aa80dc8eec3bf37e6a4580d71c9 SHA512 1e001792d4a317b2f68e7a5a888c119c297c74780af7784c30e419ea6361d0e3601c07cca16429635d606336dc1dd8c84e924163bd2a259de9cb4ceda9aea45a -EBUILD openjdk-8.412_p08.ebuild 7819 BLAKE2B 46ee633ad8c8751885c948f3648e76f973266336fe15fa0016368302719770d9435c5e0db4cb59481e782e2b89adabe8b8cd0b4624749051c066de120509f8b7 SHA512 250754810305bf30ac7ce4dbc15dd1a321f4dc47cf5e49154f26b80b704218b21b6ab2f428a9857096936793460f2471df2fcd921c7fdc40838f11a2d0cce377 EBUILD openjdk-8.422_p05.ebuild 7819 BLAKE2B 46ee633ad8c8751885c948f3648e76f973266336fe15fa0016368302719770d9435c5e0db4cb59481e782e2b89adabe8b8cd0b4624749051c066de120509f8b7 SHA512 250754810305bf30ac7ce4dbc15dd1a321f4dc47cf5e49154f26b80b704218b21b6ab2f428a9857096936793460f2471df2fcd921c7fdc40838f11a2d0cce377 MISC metadata.xml 1549 BLAKE2B 5f7caf2330b7d8eb264df12fe6eebbf1e4acf91b04e37a4c6ea6c45101a39f2e84b4d40152d58c93e63a1d2d6fdb5649b096a314f7269d33ce72da263d392c90 SHA512 8fa15bf9544f2665a47185a3701c3a9ce1654ddedf1aebfb344f77f544a71a3bda33c2d4f3c1d5d65d7ea42b6c1f04a6e1dfaaae723c1a5fcaf63ec48d79f3de diff --git a/dev-java/openjdk/openjdk-11.0.23_p9-r1.ebuild b/dev-java/openjdk/openjdk-11.0.23_p9-r1.ebuild deleted file mode 100644 index 7b836738329f..000000000000 --- a/dev-java/openjdk/openjdk-11.0.23_p9-r1.ebuild +++ /dev/null @@ -1,311 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs - -# don't change versioning scheme -# to find correct _p number, look at -# https://github.com/openjdk/jdk${SLOT}u/tags -# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point -# to exact same commit sha. we should always use the full version. -# -ga tag is just for humans to easily identify General Availability release tag. -# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to -# set build version properly -MY_PV="${PV%_p*}-ga" - -# variable name format: <UPPERCASE_KEYWORD>_XPAK -PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball -RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball -X86_XPAK="11.0.13_p8" - -# Usage: bootstrap_uri <keyword> <version> [extracond] -# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian) -# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) ) -bootstrap_uri() { - local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap" - local suff="tar.xz" - local kw="${1:?${FUNCNAME[0]}: keyword not specified}" - local ver="${2:?${FUNCNAME[0]}: version not specified}" - local cond="${3-}" - - # here be dragons - echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })" -} - -DESCRIPTION="Open source implementation of the Java programming language" -HOMEPAGE="https://openjdk.org" -SRC_URI=" - https://github.com/${PN}/jdk11u/archive/jdk-${MY_PV}.tar.gz - -> ${P}.tar.gz - !system-bootstrap? ( - $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) - $(bootstrap_uri riscv ${RISCV_XPAK}) - $(bootstrap_uri x86 ${X86_XPAK}) - ) - riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.18-riscv.patch.xz ) -" -S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}" - -LICENSE="GPL-2-with-classpath-exception" -SLOT="${MY_PV%%[.+]*}" -KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86" - -IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap" - -REQUIRED_USE=" - javafx? ( alsa !headless-awt ) - !system-bootstrap? ( jbootstrap ) -" - -COMMON_DEPEND=" - media-libs/freetype:2= - media-libs/giflib:0/7 - media-libs/harfbuzz:= - media-libs/libpng:0= - media-libs/lcms:2= - sys-libs/zlib - media-libs/libjpeg-turbo:0= - systemtap? ( dev-debug/systemtap ) -" - -# Many libs are required to build, but not to run, make is possible to remove -# by listing conditionally in RDEPEND unconditionally in DEPEND -RDEPEND=" - ${COMMON_DEPEND} - >=sys-apps/baselayout-java-0.1.0-r1 - !headless-awt? ( - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXt - x11-libs/libXtst - ) - alsa? ( media-libs/alsa-lib ) - cups? ( net-print/cups ) - selinux? ( sec-policy/selinux-java ) -" - -DEPEND=" - ${COMMON_DEPEND} - app-arch/zip - media-libs/alsa-lib - net-print/cups - x11-base/xorg-proto - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXt - x11-libs/libXtst - javafx? ( dev-java/openjfx:${SLOT}= ) - system-bootstrap? ( - || ( - dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)] - dev-java/openjdk:${SLOT}[gentoo-vm(+)] - ) - ) -" - -# The space required to build varies wildly depending on USE flags, -# ranging from 2GB to 16GB. This function is certainly not exact but -# should be close enough to be useful. -openjdk_check_requirements() { - local M - M=2048 - M=$(( $(usex jbootstrap 2 1) * $M )) - M=$(( $(usex debug 3 1) * $M )) - M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) - - CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} -} - -pkg_pretend() { - openjdk_check_requirements - if [[ ${MERGE_TYPE} != binary ]]; then - has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" - fi -} - -pkg_setup() { - openjdk_check_requirements - java-vm-2_pkg_setup - - [[ ${MERGE_TYPE} == "binary" ]] && return - - JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" - JAVA_PKG_WANT_SOURCE="${SLOT}" - JAVA_PKG_WANT_TARGET="${SLOT}" - - if use system-bootstrap; then - for vm in ${JAVA_PKG_WANT_BUILD_VM}; do - if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then - java-pkg-2_pkg_setup - return - fi - done - fi -} - -src_prepare() { - use riscv && eapply "${WORKDIR}"/openjdk-11.0.18-riscv.patch - default - chmod +x configure || die -} - -src_configure() { - if ! use system-bootstrap; then - local xpakvar="${ARCH^^}_XPAK" - export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" - fi - - # Work around stack alignment issue, bug #647954. - use x86 && append-flags -mincoming-stack-boundary=2 - - # bug 906987; append-cppflags doesnt work - use elibc_musl && append-flags -D_LARGEFILE64_SOURCE - - # Strip some flags users may set, but should not. #818502 - filter-flags -fexceptions - - # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt - # https://bugs.gentoo.org/833097 - # https://bugs.gentoo.org/833098 - filter-lto - filter-flags -fdevirtualize-at-ltrans - - # Enabling full docs appears to break doc building. If not - # explicitly disabled, the flag will get auto-enabled if pandoc and - # graphviz are detected. pandoc has loads of dependencies anyway. - - local myconf=( - --disable-ccache - --disable-precompiled-headers - --enable-full-docs=no - --with-boot-jdk="${JDK_HOME}" - --with-extra-cflags="${CFLAGS}" - --with-extra-cxxflags="${CXXFLAGS}" - --with-extra-ldflags="${LDFLAGS}" - --with-freetype="${XPAK_BOOTSTRAP:-system}" - --with-giflib="${XPAK_BOOTSTRAP:-system}" - --with-harfbuzz="${XPAK_BOOTSTRAP:-system}" - --with-lcms="${XPAK_BOOTSTRAP:-system}" - --with-libjpeg="${XPAK_BOOTSTRAP:-system}" - --with-libpng="${XPAK_BOOTSTRAP:-system}" - --with-native-debug-symbols=$(usex debug internal none) - --with-vendor-name="Gentoo" - --with-vendor-url="https://gentoo.org" - --with-vendor-bug-url="https://bugs.gentoo.org" - --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" - --with-vendor-version-string="${PVR}" - --with-version-pre="" - --with-version-string="${PV%_p*}" - --with-version-build="${PV#*_p}" - --with-zlib="${XPAK_BOOTSTRAP:-system}" - --enable-dtrace=$(usex systemtap yes no) - --enable-headless-only=$(usex headless-awt yes no) - $(tc-is-clang && echo "--with-toolchain-type=clang") - ) - ! use riscv && myconf+=( --with-jvm-features=shenandoahgc ) - - use lto && myconf+=( --with-jvm-features=link-time-opt ) - - if use javafx; then - # this is not useful for users, just for upstream developers - # build system compares mesa version in md file - # https://bugs.gentoo.org/822612 - export LEGAL_EXCLUDES=mesa3d.md - - local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip" - if [[ -r ${zip} ]]; then - myconf+=( --with-import-modules="${zip}" ) - else - die "${zip} not found or not readable" - fi - fi - - if use !system-bootstrap ; then - addpredict /dev/random - addpredict /proc/self/coredump_filter - fi - - ( - unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS - CFLAGS= CXXFLAGS= LDFLAGS= \ - CONFIG_SITE=/dev/null \ - econf "${myconf[@]}" - ) -} - -src_compile() { - # Too brittle - gets confused by e.g. -Oline - export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" - unset GNUMAKEFLAGS MAKEFLAGS - - local myemakeargs=( - JOBS=$(makeopts_jobs) - LOG=debug - CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror - NICE= # Use PORTAGE_NICENESS, don't adjust further down - $(usex doc docs '') - $(usex jbootstrap bootcycle-images product-images) - ) - emake "${myemakeargs[@]}" -j1 -} - -src_install() { - local dest="/usr/$(get_libdir)/${PN}-${SLOT}" - local ddest="${ED}/${dest#/}" - - cd "${S}"/build/*-release/images/jdk || die - - # Create files used as storage for system preferences. - mkdir .systemPrefs || die - touch .systemPrefs/.system.lock || die - touch .systemPrefs/.systemRootModFile || die - - # Oracle and IcedTea have libjsoundalsa.so depending on - # libasound.so.2 but OpenJDK only has libjsound.so. Weird. - if ! use alsa ; then - rm -v lib/libjsound.* || die - fi - - if ! use examples ; then - rm -vr demo/ || die - fi - - if ! use source ; then - rm -v lib/src.zip || die - fi - - rm -v lib/security/cacerts || die - - dodir "${dest}" - cp -pPR * "${ddest}" || die - - dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts - - # must be done before running itself - java-vm_set-pax-markings "${ddest}" - - einfo "Creating the Class Data Sharing archives and disabling usage tracking" - "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die - - java-vm_install-env "${FILESDIR}"/${PN}.env.sh - java-vm_revdep-mask - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter - - if use doc ; then - docinto html - dodoc -r "${S}"/build/*-release/images/docs/* - dosym -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" - fi -} - -pkg_postinst() { - java-vm-2_pkg_postinst -} diff --git a/dev-java/openjdk/openjdk-17.0.11_p9.ebuild b/dev-java/openjdk/openjdk-17.0.11_p9.ebuild deleted file mode 100644 index 0bd209de601f..000000000000 --- a/dev-java/openjdk/openjdk-17.0.11_p9.ebuild +++ /dev/null @@ -1,320 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs - -# variable name format: <UPPERCASE_KEYWORD>_XPAK -ARM64_XPAK="17.0.2_p8" # musl bootstrap install -PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball -RISCV_XPAK="17.0.3_p7" -X86_XPAK="17.0.1_p12" - -# Usage: bootstrap_uri <keyword> <version> [extracond] -# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian) -# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) ) -bootstrap_uri() { - local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap" - local suff="tar.xz" - local kw="${1:?${FUNCNAME[0]}: keyword not specified}" - local ver="${2:?${FUNCNAME[0]}: version not specified}" - local cond="${3-}" - [[ ${cond} == elibc_musl* ]] && local musl=yes - - # here be dragons - echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })" -} - -# don't change versioning scheme -# to find correct _p number, look at -# https://github.com/openjdk/jdk${SLOT}u/tags -# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point -# to exact same commit sha. we should always use the full version. -# -ga tag is just for humans to easily identify General Availability release tag. -MY_PV="${PV%_p*}-ga" - -DESCRIPTION="Open source implementation of the Java programming language" -HOMEPAGE="https://openjdk.org" -SRC_URI=" - https://github.com/${PN}/jdk17u/archive/jdk-${MY_PV}.tar.gz - -> ${P}.tar.gz - !system-bootstrap? ( - $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl) - $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) - $(bootstrap_uri x86 ${X86_XPAK}) - $(bootstrap_uri riscv ${RISCV_XPAK}) - ) -" -S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}" - -LICENSE="GPL-2-with-classpath-exception" -SLOT="${MY_PV%%[.+]*}" -KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86" - -IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap" - -REQUIRED_USE=" - javafx? ( alsa !headless-awt ) - !system-bootstrap? ( jbootstrap ) -" - -COMMON_DEPEND=" - media-libs/freetype:2= - media-libs/giflib:0/7 - media-libs/harfbuzz:= - media-libs/libpng:0= - media-libs/lcms:2= - sys-libs/zlib - media-libs/libjpeg-turbo:0= - systemtap? ( dev-debug/systemtap ) -" - -# Many libs are required to build, but not to run, make is possible to remove -# by listing conditionally in RDEPEND unconditionally in DEPEND -RDEPEND=" - ${COMMON_DEPEND} - >=sys-apps/baselayout-java-0.1.0-r1 - !headless-awt? ( - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXt - x11-libs/libXtst - ) - alsa? ( media-libs/alsa-lib ) - cups? ( net-print/cups ) - selinux? ( sec-policy/selinux-java ) -" - -DEPEND=" - ${COMMON_DEPEND} - app-arch/zip - media-libs/alsa-lib - net-print/cups - x11-base/xorg-proto - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXt - x11-libs/libXtst - javafx? ( dev-java/openjfx:${SLOT}= ) - system-bootstrap? ( - || ( - dev-java/openjdk-bin:${SLOT} - dev-java/openjdk:${SLOT} - ) - ) -" - -# The space required to build varies wildly depending on USE flags, -# ranging from 2GB to 16GB. This function is certainly not exact but -# should be close enough to be useful. -openjdk_check_requirements() { - local M - M=2048 - M=$(( $(usex jbootstrap 2 1) * $M )) - M=$(( $(usex debug 3 1) * $M )) - M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) - - CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} -} - -pkg_pretend() { - openjdk_check_requirements - if [[ ${MERGE_TYPE} != binary ]]; then - has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" - fi -} - -pkg_setup() { - openjdk_check_requirements - java-vm-2_pkg_setup - - [[ ${MERGE_TYPE} == "binary" ]] && return - - JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" - JAVA_PKG_WANT_SOURCE="${SLOT}" - JAVA_PKG_WANT_TARGET="${SLOT}" - - # The nastiness below is necessary while the gentoo-vm USE flag is - # masked. First we call java-pkg-2_pkg_setup if it looks like the - # flag was unmasked against one of the possible build VMs. If not, - # we try finding one of them in their expected locations. This would - # have been slightly less messy if openjdk-bin had been installed to - # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env - # file but disable it so that it would not normally be selectable. - - local vm - for vm in ${JAVA_PKG_WANT_BUILD_VM}; do - if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then - java-pkg-2_pkg_setup - return - fi - done -} - -src_prepare() { - default - chmod +x configure || die -} - -src_configure() { - if has_version dev-java/openjdk:${SLOT}; then - export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT} - elif use !system-bootstrap ; then - local xpakvar="${ARCH^^}_XPAK" - export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" - else - JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT}) - [[ -n ${JDK_HOME} ]] || die "Build VM not found!" - JDK_HOME=${JDK_HOME#*/} - JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*} - export JDK_HOME - fi - - # Work around stack alignment issue, bug #647954. in case we ever have x86 - use x86 && append-flags -mincoming-stack-boundary=2 - - # bug 906987; append-cppflags doesnt work - use elibc_musl && append-flags -D_LARGEFILE64_SOURCE - - # Strip some flags users may set, but should not. #818502 - filter-flags -fexceptions - - # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt - # https://bugs.gentoo.org/833097 - # https://bugs.gentoo.org/833098 - filter-lto - filter-flags -fdevirtualize-at-ltrans - - # Enabling full docs appears to break doc building. If not - # explicitly disabled, the flag will get auto-enabled if pandoc and - # graphviz are detected. pandoc has loads of dependencies anyway. - - local myconf=( - --disable-ccache - --disable-precompiled-headers - --disable-warnings-as-errors - --enable-full-docs=no - --with-boot-jdk="${JDK_HOME}" - --with-extra-cflags="${CFLAGS}" - --with-extra-cxxflags="${CXXFLAGS}" - --with-extra-ldflags="${LDFLAGS}" - --with-freetype="${XPAK_BOOTSTRAP:-system}" - --with-giflib="${XPAK_BOOTSTRAP:-system}" - --with-harfbuzz="${XPAK_BOOTSTRAP:-system}" - --with-lcms="${XPAK_BOOTSTRAP:-system}" - --with-libjpeg="${XPAK_BOOTSTRAP:-system}" - --with-libpng="${XPAK_BOOTSTRAP:-system}" - --with-native-debug-symbols=$(usex debug internal none) - --with-vendor-name="Gentoo" - --with-vendor-url="https://gentoo.org" - --with-vendor-bug-url="https://bugs.gentoo.org" - --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" - --with-vendor-version-string="${PVR}" - --with-version-pre="" - --with-version-string="${PV%_p*}" - --with-version-build="${PV#*_p}" - --with-zlib="${XPAK_BOOTSTRAP:-system}" - --enable-jvm-feature-dtrace=$(usex systemtap yes no) - --enable-headless-only=$(usex headless-awt yes no) - $(tc-is-clang && echo "--with-toolchain-type=clang") - ) - - use lto && myconf+=( --with-jvm-features=link-time-opt ) - - if use javafx; then - local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip" - if [[ -r ${zip} ]]; then - myconf+=( --with-import-modules="${zip}" ) - else - die "${zip} not found or not readable" - fi - fi - - if use !system-bootstrap ; then - addpredict /dev/random - addpredict /proc/self/coredump_filter - fi - - ( - unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS - CFLAGS= CXXFLAGS= LDFLAGS= \ - CONFIG_SITE=/dev/null \ - econf "${myconf[@]}" - ) -} - -src_compile() { - # Too brittle - gets confused by e.g. -Oline - export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" - unset GNUMAKEFLAGS MAKEFLAGS - - local myemakeargs=( - JOBS=$(makeopts_jobs) - LOG=debug - CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror - NICE= # Use PORTAGE_NICENESS, don't adjust further down - $(usex doc docs '') - $(usex jbootstrap bootcycle-images product-images) - ) - emake "${myemakeargs[@]}" -j1 -} - -src_install() { - local dest="/usr/$(get_libdir)/${PN}-${SLOT}" - local ddest="${ED}/${dest#/}" - - cd "${S}"/build/*-release/images/jdk || die - - # Create files used as storage for system preferences. - mkdir .systemPrefs || die - touch .systemPrefs/.system.lock || die - touch .systemPrefs/.systemRootModFile || die - - # Oracle and IcedTea have libjsoundalsa.so depending on - # libasound.so.2 but OpenJDK only has libjsound.so. Weird. - if ! use alsa ; then - rm -v lib/libjsound.* || die - fi - - if ! use examples ; then - rm -vr demo/ || die - fi - - if ! use source ; then - rm -v lib/src.zip || die - fi - - rm -v lib/security/cacerts || die - - dodir "${dest}" - cp -pPR * "${ddest}" || die - - dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts - - # must be done before running itself - java-vm_set-pax-markings "${ddest}" - - einfo "Creating the Class Data Sharing archives and disabling usage tracking" - "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die - - java-vm_install-env "${FILESDIR}"/${PN}.env.sh - java-vm_revdep-mask - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter - - if use doc ; then - docinto html - dodoc -r "${S}"/build/*-release/images/docs/* - dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" - fi -} - -pkg_postinst() { - java-vm-2_pkg_postinst -} diff --git a/dev-java/openjdk/openjdk-8.412_p08.ebuild b/dev-java/openjdk/openjdk-8.412_p08.ebuild deleted file mode 100644 index d006b5c56f80..000000000000 --- a/dev-java/openjdk/openjdk-8.412_p08.ebuild +++ /dev/null @@ -1,283 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs - -# don't change versioning scheme -# to find correct _p number, look at -# https://github.com/openjdk/jdk${SLOT}u/tags -# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point -# to exact same commit sha. we should always use the full version. -# -ga tag is just for humans to easily identify General Availability release tag. -# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to -# set build version properly -MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)" - -# variable name format: <UPPERCASE_KEYWORD>_XPAK -X86_XPAK="8.402_p06" -PPC64_XPAK="8.402_p06" - -# Usage: bootstrap_uri <keyword> <version> [extracond] -# Example: $(bootstrap_uri x86 8.402_p06) -# Output: ppc64? ( big-endian? ( https://...8.402_p06-x86.tar.xz ) ) -bootstrap_uri() { - local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap" - local suff="tar.xz" - local kw="${1:?${FUNCNAME[0]}: keyword not specified}" - local ver="${2:?${FUNCNAME[0]}: version not specified}" - local cond="${3-}" - - # here be dragons - echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })" -} - -DESCRIPTION="Open source implementation of the Java programming language" -HOMEPAGE="https://openjdk.org" -SRC_URI=" - https://github.com/openjdk/jdk8u/archive/jdk${MY_PV}.tar.gz - -> ${P}.tar.gz - !system-bootstrap? ( - $(bootstrap_uri x86 ${X86_XPAK}) - $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) - ) -" -S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}" - -LICENSE="GPL-2-with-classpath-exception" -SLOT="${PV%%[.+]*}" -KEYWORDS="amd64 arm64 ppc64 x86" -IUSE="alsa big-endian debug cups doc examples headless-awt javafx +jbootstrap selinux system-bootstrap source" - -COMMON_DEPEND=" - media-libs/freetype:2= - media-libs/giflib:0/7 - sys-libs/zlib -" -# Many libs are required to build, but not to run, make is possible to remove -# by listing conditionally in RDEPEND unconditionally in DEPEND -RDEPEND=" - ${COMMON_DEPEND} - >=sys-apps/baselayout-java-0.1.0-r1 - !headless-awt? ( - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrender - x11-libs/libXt - x11-libs/libXtst - ) - alsa? ( media-libs/alsa-lib ) - cups? ( net-print/cups ) - selinux? ( sec-policy/selinux-java ) -" - -DEPEND=" - ${COMMON_DEPEND} - app-arch/zip - media-libs/alsa-lib - net-print/cups - virtual/pkgconfig - x11-base/xorg-proto - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrender - x11-libs/libXt - x11-libs/libXtst - system-bootstrap? ( - || ( - dev-java/openjdk-bin:${SLOT} - dev-java/openjdk:${SLOT} - ) - ) -" - -BDEPEND=" - virtual/pkgconfig -" - -PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )" - -PATCHES=( - "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" - "${FILESDIR}/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch" - "${FILESDIR}/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch" - "${FILESDIR}/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch" - "${FILESDIR}/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch" -) - -# The space required to build varies wildly depending on USE flags, -# ranging from 2GB to 16GB. This function is certainly not exact but -# should be close enough to be useful. -openjdk_check_requirements() { - local M - M=2048 - M=$(( $(usex debug 3 1) * $M )) - M=$(( $(usex jbootstrap 2 1) * $M )) - M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) - - CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} -} - -pkg_pretend() { - openjdk_check_requirements - if [[ ${MERGE_TYPE} != binary ]]; then - has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" - fi -} - -pkg_setup() { - openjdk_check_requirements - java-vm-2_pkg_setup - - [[ ${MERGE_TYPE} == "binary" ]] && return - - JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" - JAVA_PKG_WANT_SOURCE="${SLOT}" - JAVA_PKG_WANT_TARGET="${SLOT}" - - if use system-bootstrap; then - for vm in ${JAVA_PKG_WANT_BUILD_VM}; do - if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then - java-pkg-2_pkg_setup - return - fi - done - fi -} - -src_prepare() { - default - - # new warnings in new gcc https://bugs.gentoo.org/685426 - sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \ - hotspot/make/linux/makefiles/gcc.make || die - - chmod +x configure || die -} - -src_configure() { - if ! use system-bootstrap; then - local xpakvar="${ARCH^^}_XPAK" - export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" - fi - - # general build info found here: - # https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html - - # -Wregister use (bug #918655) - append-cxxflags -std=gnu++14 - - # Work around stack alignment issue, bug #647954. - use x86 && append-flags -mincoming-stack-boundary=2 - - # Strip some flags users may set, but should not. #818502 - filter-flags -fexceptions - - # Strip lto related flags, no support in this version. - # https://bugs.gentoo.org/833097 - # https://bugs.gentoo.org/833098 - filter-lto - filter-flags -fdevirtualize-at-ltrans - - tc-export_build_env CC CXX PKG_CONFIG STRIP - - local myconf=( - --disable-ccache - --disable-freetype-bundling - --disable-precompiled-headers - --enable-unlimited-crypto - --with-boot-jdk="${JDK_HOME}" - --with-extra-cflags="${CFLAGS}" - --with-extra-cxxflags="${CXXFLAGS}" - --with-extra-ldflags="${LDFLAGS}" - --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )" - --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2" - --with-giflib="${XPAK_BOOTSTRAP:-system}" - --with-jtreg=no - --with-jobs=1 - --with-num-cores=1 - --with-update-version="$(ver_cut 2)" - --with-build-number="b$(ver_cut 4)" - --with-milestone="fcs" # magic variable that means "release version" - --with-vendor-name="Gentoo" - --with-vendor-url="https://gentoo.org" - --with-vendor-bug-url="https://bugs.gentoo.org" - --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" - --with-zlib="${XPAK_BOOTSTRAP:-system}" - --with-native-debug-symbols=$(usex debug internal none) - $(usex headless-awt --disable-headful '') - $(tc-is-clang && echo "--with-toolchain-type=clang") - ) - - ( - unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS - CFLAGS= CXXFLAGS= LDFLAGS= \ - CONFIG_SITE=/dev/null \ - CONFIG_SHELL="${BROOT}/bin/bash" - econf "${myconf[@]}" - ) -} - -src_compile() { - # Too brittle - gets confused by e.g. -Oline - export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" - unset GNUMAKEFLAGS MAKEFLAGS - - local myemakeargs=( - JOBS=$(makeopts_jobs) - LOG=debug - CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror - NICE= # Use PORTAGE_NICENESS, don't adjust further down - $(usex doc docs '') - $(usex jbootstrap bootcycle-images images) - ) - emake "${myemakeargs[@]}" -j1 -} - -src_install() { - local dest="/usr/$(get_libdir)/${PN}-${SLOT}" - local ddest="${ED}/${dest#/}" - - cd "${S}"/build/*-release/images/j2sdk-image || die - - if ! use alsa; then - rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die - fi - - # build system does not remove that - if use headless-awt ; then - rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \ - {,jre/}bin/policytool bin/appletviewer || die - fi - - if ! use examples ; then - rm -vr demo/ || die - fi - - if ! use source ; then - rm -v src.zip || die - fi - - dodir "${dest}" - cp -pPR * "${ddest}" || die - - dosym -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts - - java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh - java-vm_set-pax-markings "${ddest}" - java-vm_revdep-mask - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter - - if use doc ; then - docinto html - dodoc -r "${S}"/build/*-release/docs/* - fi -} - -pkg_postinst() { - java-vm-2_pkg_postinst - einfo "JavaWebStart functionality provided by icedtea-web package" -} |