diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-05-17 19:36:45 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-05-17 19:36:45 +0000 |
| commit | 4e5ed851e66c960ab51e65e9f83d8863c5b6ad5e (patch) | |
| tree | db31d9d342873ad0d4d690dae1fbd278b10c52ae /dev-java | |
| parent | cbc92738bcbee729635ca7534e0521fbcef7b350 (diff) | |
| download | baldeagleos-repo-4e5ed851e66c960ab51e65e9f83d8863c5b6ad5e.tar.gz baldeagleos-repo-4e5ed851e66c960ab51e65e9f83d8863c5b6ad5e.tar.xz baldeagleos-repo-4e5ed851e66c960ab51e65e9f83d8863c5b6ad5e.zip | |
Adding metadata
Diffstat (limited to 'dev-java')
| -rw-r--r-- | dev-java/icu4j/icu4j-75.1.ebuild | 2 | ||||
| -rw-r--r-- | dev-java/junit/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/junit/junit-5.9.2.ebuild | 337 | ||||
| -rw-r--r-- | dev-java/openjdk-bin/Manifest | 6 | ||||
| -rw-r--r-- | dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild | 135 | ||||
| -rw-r--r-- | dev-java/openjdk-jre-bin/Manifest | 2 | ||||
| -rw-r--r-- | dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild | 83 | ||||
| -rw-r--r-- | dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild | 83 | ||||
| -rw-r--r-- | dev-java/openjdk/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/openjdk/openjdk-11.0.22_p7.ebuild | 312 |
10 files changed, 1 insertions, 961 deletions
diff --git a/dev-java/icu4j/icu4j-75.1.ebuild b/dev-java/icu4j/icu4j-75.1.ebuild index 9447d4deca82..5b53626e6551 100644 --- a/dev-java/icu4j/icu4j-75.1.ebuild +++ b/dev-java/icu4j/icu4j-75.1.ebuild @@ -20,7 +20,7 @@ S="${WORKDIR}/icu-release-${PV/./-}/icu4j/main" LICENSE="icu" SLOT="0" -KEYWORDS="~amd64 ~arm arm64 ppc64 ~x86" +KEYWORDS="~amd64 ~arm arm64 ppc64 x86" DEPEND=" >=virtual/jdk-1.8:* diff --git a/dev-java/junit/Manifest b/dev-java/junit/Manifest index edb0ff99b55c..7c157778f793 100644 --- a/dev-java/junit/Manifest +++ b/dev-java/junit/Manifest @@ -1,5 +1,4 @@ DIST junit-4.13.2_p20240222.tar.gz 1007781 BLAKE2B 4eeab59aa7ff3cc65c73318acb562523e6ba781da6a0baf28f8fa82042f1affddb583d188c550207a7e267b3475f4a546e8e25eba61d5ba36d13bd7e277ad156 SHA512 89506413b7aca7c2d0b41c8297dde48c1b90a44133bfb3ebf300247c7837839a3aff2d785d891ddb8762427d718eacf016a1d67e2e24edda05f4eae36ca311f1 DIST junit-5.10.2.tar.gz 2942035 BLAKE2B 4880df74b7cbf23acd34c716f9fce26edd28b31c14d720e129e9e1f06aa35b70c447a0d87904e083a54663fba17e0b2b470678dc32480e0a11c5ebf46d5fe38e SHA512 c36ff7c2bd21f9a64c93b836fc1017a8a96ebcc0079cf1d95b09f5b764435178c2dc2336f2493e7e4df561013693dce4f08dfe0cf3bd76cc9b820313f64d064f -DIST junit-5.9.2.tar.gz 2882173 BLAKE2B 6baf8768654b399d64237a110dcb6a821ab7dc8964254a5d00f7ffb65c789818aed51ad7042a963a47669042baaeec87b5d0453643a2b0eeeaf6393a42c75fd6 SHA512 5673577f773042b4e253241d27298a60dbac239502788e1d999fbe0d3ffe76b29c90d4fb43660f2e2e00e3e9b8d4c1b6b909ff95dc6e87ccb6f7b009ae6b0e78 DIST junit3.8.2.zip 461426 BLAKE2B 8fbef1ccdf7f71c611976d63f45838f4cb2564da5f5064e7abc39931a3c99039a40660093aba2cc3c70af761171125f434c16c52021226f2e92fdf23597dbf25 SHA512 f203332ccc2bdc38c683a95bdbe448f38cbfbeea81ecc431bf9ebf0a3292f0150fcfe5cd5dd6da481be034366820f95775a33581931aed9e4cc12a6ff27e3930 DIST junit5-java18-compatibility.patch 742 BLAKE2B 89bfa36330278cdee2f7f66ed5527895e650a7b490d3f3695772a27541be1d8383c1742bab4e8494f3a84c29f93f553880a3bd5cd4d84792cf662fbc33a6e594 SHA512 5a9a562eb61a875764da369ff40da6ff95c6de8b3b3ecb612634112076741d75d6eab385743843b4fe7ca8a1827960e06550f6e90c8b7ef75b55006b41c416cd diff --git a/dev-java/junit/junit-5.9.2.ebuild b/dev-java/junit/junit-5.9.2.ebuild deleted file mode 100644 index 46efd8fcf0d8..000000000000 --- a/dev-java/junit/junit-5.9.2.ebuild +++ /dev/null @@ -1,337 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Declare the 'doc' USE flag in IUSE -- not JAVA_PKG_IUSE -- to -# prevent java-pkg-simple.eclass from handling Javadoc; instead, -# let this ebuild handle Javadoc generation and installation itself. -# This ebuild invokes java-pkg-simple.eclass's phase functions -# multiple times to build multiple modules, but the eclass always -# installs each module's Javadoc to the same directory, which would -# trigger an error when the second module's Javadoc is installed. -JAVA_PKG_IUSE="source" - -inherit java-pkg-2 java-pkg-simple - -DESCRIPTION="Simple framework to write repeatable tests" -HOMEPAGE="https://junit.org/junit5/" -SRC_URI="https://github.com/junit-team/junit5/archive/r${PV}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/junit5-r${PV}" -LICENSE="EPL-2.0" - -SLOT="5" -KEYWORDS="amd64 ~arm arm64 ppc64 x86" -IUSE="doc migration-support suite vintage" - -CP_DEPEND=" - dev-java/apiguardian-api:0 - dev-java/opentest4j:0 - dev-java/open-test-reporting-events:0 - dev-java/picocli:0 - dev-java/univocity-parsers:0 -" - -# java-utils-2.eclass does not support -# USE-conditional dependencies in CP_DEPEND -COND_DEPEND=" - migration-support? ( dev-java/junit:4 ) - vintage? ( dev-java/junit:4 ) -" - -# Limiting JDK version to >=11 for module-info.java in this package -# https://bugs.gentoo.org/796875#c3 -DEPEND=" - >=virtual/jdk-11:* - ${CP_DEPEND} - ${COND_DEPEND} -" - -RDEPEND=" - >=virtual/jre-1.8:* - ${CP_DEPEND} - ${COND_DEPEND} -" - -src_configure() { - # Please make sure to declare a module's dependencies before the module itself. - # Useful upstream documentation regarding modules and dependencies: - # https://junit.org/junit5/docs/current/user-guide/index.html#dependency-metadata - # https://junit.org/junit5/docs/current/user-guide/index.html#dependency-diagram - JUNIT5_MODULES=( - junit-platform-commons - junit-platform-engine - junit-platform-launcher - junit-platform-reporting - junit-platform-console # For launching tests from CLI; - # an eclass would need it to support running tests using JUnit 5 - - $(use suite && echo \ - junit-platform-suite-api \ - junit-platform-suite-commons \ - junit-platform-suite-engine \ - ) - - junit-jupiter-api - junit-jupiter-engine # For JUnit Jupiter tests -- the so-called - # "JUnit 5 tests", which cannot run on earlier JUnit versions - junit-jupiter-params # For parameterized tests; the junit-jupiter - # aggregator module includes it, so building it unconditionally - $(usev migration-support junit-jupiter-migrationsupport) - - $(usev vintage junit-vintage-engine) - - # Modules not included: - # - junit-bom: Has no sources; solely for helping Maven and Gradle - # projects that use JUnit 5 manage dependencies easier - # - junit-jupiter: Aggregator; does not have 'src/main/java' - # - junit-platform-console-standalone: Has no sources; solely used - # by the upstream to build a fat JAR that bundles everything, so - # users can use just this single JAR to run JUnit 5 - # - junit-platform-jfr: For an experimental feature - # - junit-platform-runner: Deprecated - # - junit-platform-suite: Aggregator; does not have 'src/main/java' - # - junit-platform-testkit: Requires >=dev-java/assertj-core-3.14.0 - ) - local cp_packages=() - (use migration-support || use vintage) && cp_packages+=( junit-4 ) - local save_IFS="${IFS}" - IFS=',' JAVA_GENTOO_CLASSPATH="${cp_packages[*]}" - IFS="${save_IFS}" - - JUNIT5_VM_VERSION="$(java-config --get-env PROVIDES_VERSION)" -} - -junit5_foreach_module() { - local module - for module in "${JUNIT5_MODULES[@]}"; do - junit5_module_do "${module}" "${@}" - done -} - -junit5_module_do() { - local module="${1}" - # Invocation of the passed function will not be guarded by '|| die'. - # Like the case for multibuild_foreach_variant(), it is recommended - # that the passed function itself calls 'die'. - local func=( "${@:2}" ) - - einfo "Running '${func[@]}' for ${module} ..." - pushd "${module}" > /dev/null || die "Failed to enter directory '${module}'" - - # Set up Java eclass variables that are - # supposed to be set in the ebuild global scope - - local JAVA_JAR_FILENAME="${module}.jar" - - local JAVA_SRC_DIR=( - src/main/java - src/module - ) - - local JAVA_RESOURCE_DIRS=() - local default_resource_dir="src/main/resources" - [[ -d "${default_resource_dir}" ]] && - JAVA_RESOURCE_DIRS+=( "${default_resource_dir}" ) - - if [[ "${module}" == junit-platform-console ]]; then - local JAVA_MAIN_CLASS="org.junit.platform.console.ConsoleLauncher" - local JAVA_LAUNCHER_FILENAME="${module}" - fi - - # Invoke the passed function - "${func[@]}" - local ret="${?}" - - popd > /dev/null || die "Failed to leave directory '${module}'" - return "${ret}" -} - -junit5_gen_cp() { - echo "$(java-pkg_getjars --build-only --with-dependencies \ - "${JAVA_GENTOO_CLASSPATH}"):${JAVA_GENTOO_CLASSPATH_EXTRA}" -} - -junit5_module_compile() { - if [[ "${module}" == junit-platform-console ]]; then - # Unlike other modules that have a src/main/java9 directory, for this - # module, the upstream puts the class files built from src/main/java9 - # in their JAR's top-level directory instead of META-INF/versions/9 - cp -rv src/main/java9/* src/main/java/ || - die "Failed to merge ${module}'s sources for Java 9+" - # Remove for the [[ -d src/main/java9 ]] test - # during versioned directory handling - rm -rv src/main/java9 || - die "Failed to remove ${module}'s Java 9+ source directory" - fi - - java-pkg-simple_src_compile - local sources="sources.lst" - local classes="target/classes" - - # Collect a list of all compiler input files for building Javadoc - local source - while read source; do - echo "${module}/${source}" >> "${all_sources}" - done < "${sources}" || - die "Failed to add ${module}'s sources to Javadoc input list" - - # Handle classes that will go into versioned directories. This will be - # no longer needed after https://bugs.gentoo.org/900433 is implemented. - local vm_ver - for vm_ver in 9 17; do - local versioned_src="src/main/java${vm_ver}" - if [[ -d "${versioned_src}" ]]; then - if ver_test "${JUNIT5_VM_VERSION}" -ge "${vm_ver}"; then - local versioned_classes="target/${vm_ver}/classes" - mkdir -p "${versioned_classes}" || - die "Failed to create directory for ${module}'s Java ${vm_ver}+ classes" - ejavac -d "${versioned_classes}" -encoding "${JAVA_ENCODING}" \ - -classpath "${classes}:$(junit5_gen_cp)" ${JAVAC_ARGS} \ - $(find "${versioned_src}" -type f -name '*.java') - "$(java-config --jar)" -uvf "${JAVA_JAR_FILENAME}" \ - --release "${vm_ver}" -C "${versioned_classes}" . || - die "Failed to add ${module}'s Java ${vm_ver}+ classes to JAR" - else - # Modules that may hit this branch as of 5.9.2: - # - junit-platform-console: - # src/main/java17/.../ConsoleUtils.java tries to use - # java.io.Console.charset() (available since Java 17) to get - # the default output charset. It is fine to not use this - # file, even if the built artifacts will be used on JRE 17+, - # as src/main/java/.../ConsoleUtils.java still gets the - # default from java.nio.charset.Charset.defaultCharset(). - elog "JDK ${JUNIT5_VM_VERSION} used; skipping Java ${vm_ver}-dependent parts in ${module}" - fi - fi - done - - # Add the current module's JAR to classpath - # for the module's reverse dependencies in this package - JAVA_GENTOO_CLASSPATH_EXTRA+=":${S}/${module}/${JAVA_JAR_FILENAME}" -} - -src_compile() { - local all_sources="${S}/all-sources.lst" - junit5_foreach_module junit5_module_compile - - if use doc; then - einfo "Generating Javadoc for all modules ..." - local apidoc="target/api" - mkdir -p "${apidoc}" || die "Failed to create Javadoc directory" - ejavadoc -d "${apidoc}" \ - -encoding "${JAVA_ENCODING}" -docencoding UTF-8 -charset UTF-8 \ - -classpath "$(junit5_gen_cp)" ${JAVADOC_ARGS:- -quiet} \ - -windowtitle "JUnit ${PV} API" \ - "@${all_sources}" - fi -} - -src_test() { - # Running the JUnit 5 modules' tests (located in each module's - # 'src/test/java') has a few obstacles: - # - Some test sources use text blocks -- a feature introduced in Java 15. - # A JDK at a lower version, e.g. 11, cannot compile them. - # - Some test classes depend on JUnit 5 modules that this ebuild does not - # include, like junit-platform-runner and junit-platform-testkit. - # - # Therefore, this ebuild uses a simpler approach to test the artifacts just - # built: it uses the artifacts to run tests in examples under the - # 'documentation/src' directory. The test coverage will not be impressive, - # but at least this approach verifies that the copy of JUnit 5 just built - # is capable of running some simple tests launched from CLI. - - local JUNIT5_TEST_SRC_DIR="documentation/src/test/java" - local JUNIT5_TEST_RESOURCE_DIR="documentation/src/test/resources" - local JUNIT5_TEST_RM=( - $(usev !migration-support example/IgnoredTestsDemo.java) - $(use !suite && echo \ - example/DocumentationTestSuite.java \ - example/SuiteDemo.java \ - ) - $(usev !vintage example/JUnit4Tests.java) - - # Need excluded module junit-platform-runner - example/JUnitPlatformClassDemo.java - example/JUnitPlatformSuiteDemo.java - - # Need excluded module junit-platform-testkit - example/testkit/ - - # Not necessary for the tests; some files even require extra dependency - org/junit/api/tools/ - - # Needs dev-java/hamcrest; no need to pull in extra dependency - # as the examples already provide ample tests to run - example/HamcrestAssertionsDemo.java - - # Makes an HTTP request and expects a certain response - example/session/HttpTests.java - ) - - pushd "${JUNIT5_TEST_SRC_DIR}" > /dev/null || - die "Failed to enter test source directory" - rm -rv "${JUNIT5_TEST_RM[@]}" || - die "Failed to remove unneeded test sources" - # Test sources expect the working directory to be 'documentation' - sed -i -e "s|src/test/resources|${JUNIT5_TEST_RESOURCE_DIR}|g" \ - example/ParameterizedTestDemo.java || - die "Failed to update file paths in test sources" - popd > /dev/null || die "Failed to leave test source directory" - - local test_dir="${T}/junit5_src_test" - local example_classes="${test_dir}/classes" - local test_classes="${test_dir}/test-classes" - mkdir -p "${example_classes}" "${test_classes}" || - die "Failed to create test directories" - - local example_sources="${test_dir}/sources.lst" - local test_sources="${test_dir}/test-sources.lst" - find documentation/src/main/java -type f -name '*.java' > "${example_sources}" || - die "Failed to get a list of example sources" - find documentation/src/test/java -type f -name '*.java' > "${test_sources}" || - die "Failed to get a list of test sources" - - ejavac -d "${example_classes}" -encoding "${JAVA_ENCODING}" \ - -classpath "$(junit5_gen_cp)" ${JAVAC_ARGS} \ - "@${example_sources}" - - local test_cp="${example_classes}:${JUNIT5_TEST_RESOURCE_DIR}:$(junit5_gen_cp)" - ejavac -d "${test_classes}" -encoding "${JAVA_ENCODING}" \ - -classpath "${test_cp}" ${JAVAC_ARGS} \ - "@${test_sources}" - - set -- "$(java-config --java)" -classpath "${test_classes}:${test_cp}" \ - org.junit.platform.console.ConsoleLauncher \ - --disable-ansi-colors --fail-if-no-tests --scan-classpath \ - --include-classname='^(Test.*|.+[.$]Test.*|.*Tests?|.*Demo)$' \ - --exclude-tag="exclude" - echo "${@}" >&2 - "${@}" - local status="${?}" - [[ "${status}" -eq 2 ]] && die "JUnit did not discover any tests" - [[ "${status}" -eq 0 ]] || die "ConsoleLauncher failed" -} - -junit5_module_install() { - # It is OK to let java-pkg-simple_src_install call einstalldocs for - # each module as long as each documentation file being installed - # has a unique filename among _all_ modules; otherwise, some files - # would overwrite other ones. - if [[ -f README.md ]]; then - mv -v README.md "README-${module}.md" || - die "Failed to rename ${module}'s README.md" - fi - java-pkg-simple_src_install -} - -src_install() { - junit5_foreach_module junit5_module_install - einstalldocs # For project-global documentation - - if use doc; then - einfo "Installing Javadoc for all modules ..." - local apidoc="target/api" - java-pkg_dojavadoc "${apidoc}" - fi -} diff --git a/dev-java/openjdk-bin/Manifest b/dev-java/openjdk-bin/Manifest index 706e0d6d8ec1..0107d92432b5 100644 --- a/dev-java/openjdk-bin/Manifest +++ b/dev-java/openjdk-bin/Manifest @@ -1,14 +1,8 @@ -DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.22_7.tar.gz 191713436 BLAKE2B 2d0381ca8dc4bdc07330f79c7e290bdb60a28fe21122d4db1810dc036e7213071d327470b20361db1435fe2d5492e7d3815f3e244597d3d76a9f7894b515783f SHA512 a0772607ede5642051446dc742180fd4e42fbe78602eb3b874b00930ea4ba19eefdcf6a130f378b6cc7dde414a3db2259edb1ad570da4a7951a73bebc5a90b9b DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz 192013902 BLAKE2B 6a4b47b9a3397d3436bd55a16a459a3cab3f8a2a7dc3285b3bde8db13f0e66d5e094803df0c5901a17272e6378161caada6f27845184e2efd17a6761661299c8 SHA512 90e53418efc7c34d7cf0691d566f07a84f02bd2d34cdee0c9c343e27c8d9bfd4d1bf86f104ae33a47274932ab8ba6ec8071a35e7d613129d03e439ae3382452c -DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.22_7.tar.gz 182591395 BLAKE2B 858c6033c161dfe6c1475037bce5d538ca7b95b95b65a75edff03d0292e64d1ac2e3c2ed008b52938d9811e35a94ed694df2801605b55d6732c6c1c1b68b547b SHA512 aa0be475706f6cca490ff81389e131fb512efaa948d722b108a7060355af77134210c2509711f9c8bf4d32130cba813dc460c093d831ac8de539571ab3d08f20 DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.23_9.tar.gz 182785851 BLAKE2B 453ca29859e749a9050f8b6627696ab6d38ee5e83ab69b1d159eb3b7c0bae68104cf68ca21b87123b4fc61059e528ba4ed0ee29fa4759f33a3cf46182f52a48a SHA512 af8ed3659f8ff07f5e5c135d96a7368d326f5b19e3d73077a3fa701716f6e415d4a784ff6c5f81267eb1b3d2e171a688126253f1c3197fc80ea260826ebad5a0 -DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.22_7.tar.gz 177146946 BLAKE2B 2e285abcde91eb578c88e81c6a737d6c6e00d58001325eaed7fd332d4d42588779192ae73f3de598cf725c9cd08860ff3a0db29f7fae54a6a404cbdf0db0b2ad SHA512 6288e599a54f1e2e02dd0eef5f0aae051ae8b15ed30e924c7018ac52d2eeb2572934557b7e722df7f704568656c8a8f93797dd2e86fdc3f0f32ffd004f803419 DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz 177453532 BLAKE2B aa98f381f2ac4f208ced4dac4f4b01d20cfd27c8ccc75a0c41db6a57b67ca11d87b8133cb0af96283f646e5e90612f9ad69db5129e6f50518ad2eb0a53c86db1 SHA512 c590fa032593db48531d49977c95d1f884fe751472d927d0d0bc15f36ec35f71ea53c9acafa3dc00c4b25e88d4c18ab590b42f8057a277e16947c3ce31362381 -DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.22_7.tar.gz 193744131 BLAKE2B 2cdbf676ecc860dd8ec13d959f9f63537e4b14feb0627cc360602a377c8a7193a2db67cb71f462939ab252f2ff3be1b46a15c25a7c1c1f1632254b1ea09eeef9 SHA512 81dabded0d6cee459ade96992d4002910448aa5fa091fd1b6c376a585c382d449bc63f5e51ba0c21e5fdd81f3e1d58e1d27f0b6016daca775644610087f3b090 DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.23_9.tar.gz 193956832 BLAKE2B bc334b59bbb021812ee7064b1915b6106923d41a74a3acf5b5d8fbcf50f6e0d467a96da22f996252422b08f5c7864418c552a102a18f3bd9cb14e5b4904656e5 SHA512 f0992a7fdb1acadf8cb19a94822e7a75f7453033cc0a3432f9efface7827b4a7ebb1ff67a81774da83844afdb046461415f50ddf11192863e88ab06889c86836 -DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.22_7.tar.gz 195002045 BLAKE2B 1898bcc1c1d97668238a13c70226b14f325a7c5be55f393ce2e6373fa0764a38633511a485257d05e173670e20b8c0195fb63d7143f41a1296556e5d59a8fe00 SHA512 00d75269a88c3d879907408f76ca1ee5a1ed48914e1ac27fa4faadf66a12fbccd6235d23be6c0d096a508c6ed996884ff2fe206290c061c2542835050476cfa5 DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz 195220527 BLAKE2B b2f024fdd2d72e78c86f562fbd37684c9d9639472d66e15b4b882c35241c500c09467e97440249bf69f4e63ef99d3f057b0e79852b67d55c5518d041cba2d657 SHA512 ccccb5003b78cff0cbf471d9b885ebd5805b5a21dd71afdb03a0d447cd6715e781dbf01f11970f7632b8181147fe0090f7fe8fc46c8732d2b17f0978f01934a4 -DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.22_7.tar.gz 187409838 BLAKE2B edbbb534fad7d6b50c79253d7c8bc1369f413fd1748a4f160003db2e01d8b907c115a5a3815de85e25a16c74bf0d316cccf7e0a508a488c51c476511876d5d54 SHA512 3371785f6bcc27dea59b074798795c91f3a0fc2241ea24d9e04bdb98fd77ebc1ccb058d1b34ea56660a7bac92e60192396a9d8b85b8983f1617bddf50d118276 DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.23_9.tar.gz 187689918 BLAKE2B c1ccebd2bfeccdf64f1ab0c781e4ba5f2701f6c70de81486c6b4d91bb1d1df367f58fa66bf8f073ed47413649905a306ad3f75c6696e1d0510ce02fe3453d255 SHA512 93974938c10d58b182a7bda49e21e26806a01a03fe72915ca559df3e02c694b3b88ed11c49987bc2ca7c1acabda0892d8c22a4ab19ed8b796dd02f29c44dbff0 DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.10_7.tar.gz 190867185 BLAKE2B dfac2c4383af080b8101e73d141f6ecaf38f44a0b8e88fddf8e33eb0454fccb22075e00a8eb3031c33a0d63a079da634b128766f4ab4fed70c8da999c8f8a568 SHA512 74447bacae664b5a1a420605d1c3b68a7be8deb230cc08700b23bb159ef10acb613595505f711906aa132aec2a25d5151f178cd9982d0d254a4d31a7396b4aef DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz 191052267 BLAKE2B 837cd3f3e9cdff7b66d1a8e10e2e8ebb9db1168fad2982fd523eb8067ca017efdc05e577b93af74623558d04a8458dc1d790c9626e7ed2d6568bf7fc22a44925 SHA512 eeeacbd0f8daa1d62663f7ec95fb7dd3ff855a0187347e3c1ddb4a5d13e494c1a940b43b5fdf75480963d65dd4d94330570b751fa7cde540124ed2164c176870 diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild deleted file mode 100644 index 879465da18c0..000000000000 --- a/dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild +++ /dev/null @@ -1,135 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit java-vm-2 toolchain-funcs - -abi_uri() { - local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/" - local musl= - local os=linux - - case ${2} in - *-macos) os=mac ;; - *-solaris) os=solaris ;; - esac - - if [[ ${3} == musl ]]; then - os=alpine-linux - musl=true - fi - - echo "${2-$1}? ( - ${musl:+ elibc_musl? ( } - ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz - ${musl:+ ) } )" -} - -MY_PV=${PV/_p/+} -SLOT=$(ver_cut 1) - -SRC_URI=" - $(abi_uri aarch64 arm64) - $(abi_uri arm) - $(abi_uri ppc64le ppc64) - $(abi_uri x64 amd64) - $(abi_uri x64 x64-macos) - $(abi_uri x64 amd64 musl) -" - -DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin" -HOMEPAGE="https://adoptium.net" -LICENSE="GPL-2-with-classpath-exception" -KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos" -IUSE="alsa cups headless-awt selinux source" - -RDEPEND=" - >=sys-apps/baselayout-java-0.1.0-r1 - kernel_linux? ( - media-libs/fontconfig:1.0 - media-libs/freetype:2 - media-libs/harfbuzz - elibc_glibc? ( >=sys-libs/glibc-2.2.5:* ) - elibc_musl? ( sys-libs/musl ) - sys-libs/zlib - alsa? ( media-libs/alsa-lib ) - cups? ( net-print/cups ) - selinux? ( sec-policy/selinux-java ) - !headless-awt? ( - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrender - x11-libs/libXtst - ) - )" - -RESTRICT="preserve-libs splitdebug" -QA_PREBUILT="*" - -S="${WORKDIR}/jdk-${MY_PV}" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]]; then - die "These binaries require a hardfloat system." - fi -} - -src_unpack() { - default - if [[ ${A} == *_mac_* ]] ; then - mv -v "${S}/Contents/Home/"* "${S}" || die - rm -Rf "${S}/Contents" # drop macOS executable - fi -} - -src_install() { - local dest="/opt/${P}" - local ddest="${ED}/${dest#/}" - - # on macOS if they would exist they would be called .dylib, but most - # importantly, there are no different providers, so everything - # that's shipped works. - if [[ ${A} != *_mac_* ]] ; then - # Not sure why they bundle this as it's commonly available and they - # only do so on x86_64. It's needed by libfontmanager.so. IcedTea - # also has an explicit dependency while Oracle seemingly dlopens it. - rm -vf lib/libfreetype.so || die - - # prefer system copy # https://bugs.gentoo.org/776676 - rm -vf lib/libharfbuzz.so || die - - # Oracle and IcedTea have libjsoundalsa.so depending on - # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird. - if ! use alsa ; then - rm -v lib/libjsound.* || die - fi - - if use headless-awt ; then - rm -v lib/lib*{[jx]awt,splashscreen}* || die - fi - fi - - if ! use source ; then - rm -v lib/src.zip || die - fi - - rm -v lib/security/cacerts || die - dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts - - dodir "${dest}" - cp -pPR * "${ddest}" || die - - # provide stable symlink - dosym "${P}" "/opt/${PN}-${SLOT}" - - java-vm_install-env "${FILESDIR}"/${PN}.env.sh - java-vm_set-pax-markings "${ddest}" - java-vm_revdep-mask - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter -} - -pkg_postinst() { - java-vm-2_pkg_postinst -} diff --git a/dev-java/openjdk-jre-bin/Manifest b/dev-java/openjdk-jre-bin/Manifest index a550f6c7ebc3..b4f481d2b225 100644 --- a/dev-java/openjdk-jre-bin/Manifest +++ b/dev-java/openjdk-jre-bin/Manifest @@ -1,7 +1,5 @@ -DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.20.1_1.tar.gz 43033465 BLAKE2B 484ec2b8512e2c759840157608ae4b7cdd2729533589a8ad1ba718779e88319fa02da4c9f59b56dea93123646ca7a55e84675985679a25f5163d7511b8147f66 SHA512 4a962e2ee8c885753b7bc25c3a30af307bee2c8829438eb85b9a7b20abd72fa22b340cfb9b6a0721e8fb00379bd3a230653daa52f5f1e3e6d5ed028ea2066c99 DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz 43361001 BLAKE2B 7f5fe24de2f0967ceeaee783430fc1aa9d8c510d955eff2e10c9d94058a2985308e99a57f1dffb3adb3cee9d90d0a553abcb5438a41a0cda054b0a260e435f31 SHA512 82b4b021b7fb136a9016623cd6ab7b4ac1f5fc3bff69594b74c8b2b0305d6b0c7d20d12759062826dc27ce0b50ea176bcec76960d3d458549e11a5452b7df014 DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz 46382823 BLAKE2B 79612a8a73cee7a8ac022779a12077fa613ff7b18d8d5d198c42ae886cba21c46a1919422249696a74b5e5491542b88b57244eaa74f3b1bc8ae63ae851d10d40 SHA512 a98534b49a71a1bb6488aff4f1d2fc4fdcadfbaa17ef1ca3003568aed8498b3d3618c065334dd6bd9cffab0af15b6cbc980353e09da66c5ac69f0c96f9b0a889 -DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.8.1_1.tar.gz 46332104 BLAKE2B cd27d457ecb64a17cd86fb7f348e7868b6a5e4bb59a98971dabfcdc213e4afc70dc7c1c912dcf209c9a3931ce2abece961480cc06039b565e09f70e55269ceb9 SHA512 773f39ec8f66d1285df74706014c690f3ade9c960bc27c5032bd4c100b2e89c3d4a23150af548128bdf499d64ba1567aa065f4a39f5e583600d86414d283f66f DIST OpenJDK21U-jre_x64_linux_hotspot_21.0.3_9.tar.gz 52430722 BLAKE2B 32a969bfd1a6e334db34db6f12317810a81b60b0f6c4c978aee3fb588ed30daca0b54089feba7721a51f71d2ebb89d453aba8e7ded29f524d5923a3804828d88 SHA512 2fefc61c36f4cf4bbe722aef93aced8dc4b76d2fddeb91ad8687dc54f7afd9dff03df25ff12214bbd66fcbd637ff0ca5a21a1d839e60da9622904284bc2abfee DIST OpenJDK8U-jre_x64_linux_hotspot_8u382b05.tar.gz 41389960 BLAKE2B e79d0d6b08a0f2066c877b3f970742a209f1b56a46dd4e5bc3b3942b590ae4eb0e72ac9b909d2e0d9b61bee76d507d9df8def88c16ec87930152b8375c6272e5 SHA512 536e2b3f87907aa2d79938dae3f92efa5d6402ae252e147beb9ddc3f81b1001a8031e4eba7132b0640dad36652fb619b761e038a88246442fc8592d5fe8a9c41 DIST OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz 41415973 BLAKE2B 1372ef4f608eaecd4a82c8e5598e67b91d4b200818a896c2977f40d7c228377ad033187e5afda7cd812b37950b998bc764c155d952a62b7bf7c625299b9477d9 SHA512 f1e3a168724fd9826262d1f4e895d0809618414231e246750f96522bc89fb4f27fed83f83dd548ddd859b519512ac7a080c6a3482a9d129275102aed973eab28 diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild deleted file mode 100644 index 7e2efc602026..000000000000 --- a/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit java-vm-2 - -abi_uri() { - echo "${2-$1}? ( - https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz - )" -} - -MY_PV=${PV/_p/+} -SLOT=${MY_PV%%[.+]*} - -SRC_URI=" - $(abi_uri x64 amd64) -" - -DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin" -HOMEPAGE="https://adoptopenjdk.net" -LICENSE="GPL-2-with-classpath-exception" -KEYWORDS="amd64" -IUSE="alsa cups headless-awt selinux" - -RDEPEND=" - media-libs/fontconfig:1.0 - media-libs/freetype:2 - >net-libs/libnet-1.1 - >=sys-apps/baselayout-java-0.1.0-r1 - >=sys-libs/glibc-2.2.5:* - sys-libs/zlib - alsa? ( media-libs/alsa-lib ) - cups? ( net-print/cups ) - selinux? ( sec-policy/selinux-java ) - !headless-awt? ( - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrender - x11-libs/libXtst - )" - -RESTRICT="preserve-libs splitdebug" -QA_PREBUILT="*" - -S="${WORKDIR}/jdk-${MY_PV}-jre" - -src_install() { - local dest="/opt/${PN}-${SLOT}" - local ddest="${ED}/${dest#/}" - - # Not sure why they bundle this as it's commonly available and they - # only do so on x86_64. It's needed by libfontmanager.so. IcedTea - # also has an explicit dependency while Oracle seemingly dlopens it. - rm -vf lib/libfreetype.so || die - - # Oracle and IcedTea have libjsoundalsa.so depending on - # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird. - if ! use alsa ; then - rm -v lib/libjsound.* || die - fi - - if use headless-awt ; then - rm -v lib/lib*{[jx]awt,splashscreen}* || die - fi - - rm -v lib/security/cacerts || die - dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts - - dodir "${dest}" - cp -pPR * "${ddest}" || die - - java-vm_install-env "${FILESDIR}"/${PN}.env.sh - java-vm_set-pax-markings "${ddest}" - java-vm_revdep-mask - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter -} - -pkg_postinst() { - java-vm-2_pkg_postinst -} diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild deleted file mode 100644 index 7e2efc602026..000000000000 --- a/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit java-vm-2 - -abi_uri() { - echo "${2-$1}? ( - https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz - )" -} - -MY_PV=${PV/_p/+} -SLOT=${MY_PV%%[.+]*} - -SRC_URI=" - $(abi_uri x64 amd64) -" - -DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin" -HOMEPAGE="https://adoptopenjdk.net" -LICENSE="GPL-2-with-classpath-exception" -KEYWORDS="amd64" -IUSE="alsa cups headless-awt selinux" - -RDEPEND=" - media-libs/fontconfig:1.0 - media-libs/freetype:2 - >net-libs/libnet-1.1 - >=sys-apps/baselayout-java-0.1.0-r1 - >=sys-libs/glibc-2.2.5:* - sys-libs/zlib - alsa? ( media-libs/alsa-lib ) - cups? ( net-print/cups ) - selinux? ( sec-policy/selinux-java ) - !headless-awt? ( - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXi - x11-libs/libXrender - x11-libs/libXtst - )" - -RESTRICT="preserve-libs splitdebug" -QA_PREBUILT="*" - -S="${WORKDIR}/jdk-${MY_PV}-jre" - -src_install() { - local dest="/opt/${PN}-${SLOT}" - local ddest="${ED}/${dest#/}" - - # Not sure why they bundle this as it's commonly available and they - # only do so on x86_64. It's needed by libfontmanager.so. IcedTea - # also has an explicit dependency while Oracle seemingly dlopens it. - rm -vf lib/libfreetype.so || die - - # Oracle and IcedTea have libjsoundalsa.so depending on - # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird. - if ! use alsa ; then - rm -v lib/libjsound.* || die - fi - - if use headless-awt ; then - rm -v lib/lib*{[jx]awt,splashscreen}* || die - fi - - rm -v lib/security/cacerts || die - dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts - - dodir "${dest}" - cp -pPR * "${ddest}" || die - - java-vm_install-env "${FILESDIR}"/${PN}.env.sh - java-vm_set-pax-markings "${ddest}" - java-vm_revdep-mask - java-vm_sandbox-predict /dev/random /proc/self/coredump_filter -} - -pkg_postinst() { - java-vm-2_pkg_postinst -} diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest index f132a4ccb269..2109ac317648 100644 --- a/dev-java/openjdk/Manifest +++ b/dev-java/openjdk/Manifest @@ -1,5 +1,4 @@ DIST openjdk-11.0.18-riscv.patch.xz 272672 BLAKE2B b079612032a5bf135b05bdd1da16f2823772a5d9a18447a435f191daf78c5429a15c2e9ea64758dc9b26ee2a88275532b4f27714b2a7e4489f920c0ed2f5003b SHA512 c0426f243c5aa581d90366cb01ce811e34883a9d8a0298cab420378470e8eb427a56932ca1fbb5ed57e7430be2b38c6bc4491028ebaa25be0a938ba0bb2baf45 -DIST openjdk-11.0.22_p7.tar.gz 116235391 BLAKE2B 50b845b8f1e316da37e45c94a1890939659b554a314a1a455903e8cc58465cd69cd485548b6b42c445150187e37df5cf946d52bca754236a198f6aa10d7de37e SHA512 b88d0db9750d8201dfb4b027045de4023be766e42cca7a3ff5e0cb28db4c6da3f146a57819a6b81cb33e5837726986bcc3780ecf88bf525f445c2cd35a3993d8 DIST openjdk-11.0.23_p9.tar.gz 116316363 BLAKE2B a3745b2afe9d2529daf89aceed43025aca72a353210b0987aacb32af971262077411e9a2b6cfd938ca9d0c93c8762759b9207a13cee0808288674671164e3a36 SHA512 3851063289042ed467a9cb636eba7170a0feeaa3e5d19bda6c30a186ea624e4ae1b308006652acb9c9820c2065382bd719ee130b7a1a0524fe25ecd639f8a51d DIST openjdk-17.0.10_p7.tar.gz 106398664 BLAKE2B 48cb2bc7d063da25a62834734ba4a887d26a27a8d84c535255df67419bf4f6d8b060c48ef37bd7324e14e957a141791380d4d9e42335a90f72dc34bc7b1d12fe SHA512 c2dfd66debdce488de044efcfc3f57cc9eb07ead2cfb7dd6e28e5748d48ec89f0c326a4c3f4a5c740019b8e5a02b858d93dd74a0c6626de445144b9840d3a426 DIST openjdk-17.0.11_p9.tar.gz 106574173 BLAKE2B 3db4763527d1acb83a2d492c3e94dc571065b844cf2ac56b7377a821cf2cb48af405b9fef73f477502bedc2c119ac57a115315140af04d51dbab5a78dfa6c789 SHA512 77baa3ec3ff2d06b28121342357311d1d5ca2ddd9ac7982b1aa5fc745b49519d2f95d14226ad4ac413d9a0ecf0e49d15078cabbba0b2897d0c6883b92ef0b5e9 diff --git a/dev-java/openjdk/openjdk-11.0.22_p7.ebuild b/dev-java/openjdk/openjdk-11.0.22_p7.ebuild deleted file mode 100644 index a5a6cc2d4a63..000000000000 --- a/dev-java/openjdk/openjdk-11.0.22_p7.ebuild +++ /dev/null @@ -1,312 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit eapi8-dosym 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" -SLOT="${MY_PV%%[.+]*}" - -# 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}/jdk${SLOT}u/archive/refs/tags/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 ) -" - -LICENSE="GPL-2-with-classpath-exception" -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(+)] - ) - ) -" - -S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}" - -# 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 - - dosym8 -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/* - dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" - fi -} - -pkg_postinst() { - java-vm-2_pkg_postinst -} |
