diff options
-rw-r--r-- | dev-java/bcprov/Manifest | 2 | ||||
-rw-r--r-- | dev-java/bcprov/bcprov-1.79.ebuild | 109 | ||||
-rw-r--r-- | dev-java/bcprov/files/bcprov-1.79-PKCS12StoreTest.patch | 21 |
3 files changed, 132 insertions, 0 deletions
diff --git a/dev-java/bcprov/Manifest b/dev-java/bcprov/Manifest index e6b842b60cd4..f227ab547b8b 100644 --- a/dev-java/bcprov/Manifest +++ b/dev-java/bcprov/Manifest @@ -1,2 +1,4 @@ DIST bc-java-r1rv78v1.tar.gz 47211344 BLAKE2B 6d28e69db8ad0043a5cd6c0a4f6901ff40884be4baf60ee40d4cb5487d799e6ac5ef4282b5d6e7f873e45607394890dd26e3150c9c1729bd5346d9cc8f30f240 SHA512 87e6ecd6fea47877d9d7a196f58c5b45a7f026f18f17b71d4155061fad024194c30ce0fc44ea3e879b17f310a6626407f345a8e8970781afec4551f2aa688223 +DIST bc-java-r1rv79.tar.gz 47563177 BLAKE2B 7ca8b64ab004fb70399e950e8c588b19d110596790525ce30aeec3f2c6501bffd1bab6854c6bf1499f101e33e0ac8127c2cdaa34e5531c430e4f00fb145202f3 SHA512 294241371f536e8a9be8ff2307eaad433620c9becb26a00f6b225ea31488bc40dd8b01d20c18e47c105c7a8f1b2415136608d82811581fad4718db02e9c882a3 DIST bc-test-data-r1rv78v1.tar.gz 2084599485 BLAKE2B a4f67d4ab35321aba52696345cf1ac605866fede41d3b99aa42194f37b587fe7bdebd3ac264379b37416bf5f5c456cd78126126799257c28183e4b71a98b4225 SHA512 cc35260189f2100eb883c30f7a15b7c10f564e7e44e02c61373e7f56a03ab9971350c6798bcbb7a4c4508f5022a0a986fdcd8862449b937765dbf567e2f370ed +DIST bc-test-data-r1rv79.tar.gz 2101723062 BLAKE2B 1fa25babfbcaa855dfcf2ae8727f6a7a5221837127cc295a4c15dce515908418c9e052af101d6fc984c4b5ce204286b7361da29dbefad1b95603d6b1571603a0 SHA512 e14c1bf96a6010447cd13a680a87249a4e6d0661cc46b437e8b2e1098f3e80482dc9038446aad495ba72e1254e9c07e49b1ac848177b02ac36e10710fcd06413 diff --git a/dev-java/bcprov/bcprov-1.79.ebuild b/dev-java/bcprov/bcprov-1.79.ebuild new file mode 100644 index 000000000000..f203619a0823 --- /dev/null +++ b/dev-java/bcprov/bcprov-1.79.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.bouncycastle:bcprov-jdk18on:${PV}" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple check-reqs + +DESCRIPTION="Java cryptography APIs" +HOMEPAGE="https://www.bouncycastle.org/java.html" +MY_PV="r$(ver_rs 1 'rv' 2 'v')" +SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz + test? ( https://github.com/bcgit/bc-test-data/archive/${MY_PV}.tar.gz -> bc-test-data-${MY_PV}.tar.gz )" +S="${WORKDIR}/bc-java-${MY_PV}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64" + +DEPEND=">=virtual/jdk-11:*" +RDEPEND=">=virtual/jre-1.8:*" + +DOCS=( {README,SECURITY}.md ) +HTML_DOCS=( {CONTRIBUTORS,index}.html ) + +PATCHES=( "${FILESDIR}/bcprov-1.79-PKCS12StoreTest.patch" ) + +check_env() { + if use test; then + # this is needed only for tests + CHECKREQS_MEMORY="2048M" + check-reqs_pkg_pretend + fi +} + +pkg_pretend() { + check_env +} + +pkg_setup() { + check_env + java-pkg-2_pkg_setup +} + +src_unpack() { + unpack bc-java-${MY_PV}.tar.gz + use test && unpack bc-test-data-${MY_PV}.tar.gz +} + +src_prepare() { + default #780585 + java-pkg-2_src_prepare + # TBD: unboundid-ldapsdk should be packaged from source. + java-pkg_clean ! -path "./libs/unboundid-ldapsdk-6.0.8.jar" +} + +src_compile() { + JAVA_RESOURCE_DIRS=( + "core/src/main/resources" + "prov/src/main/resources" + ) + JAVA_SRC_DIR=( + "core/src/main/java" + "prov/src/main/java" + "prov/src/main/jdk1.9" + ) + java-pkg-simple_src_compile +} + +src_test() { + mv ../bc-test-data-${MY_PV} bc-test-data || die "cannot move bc-test-data" + + JAVA_TEST_EXTRA_ARGS="-Dtest.java.version.prefix=$(java-config -g PROVIDES_VERSION)" + JAVA_TEST_EXTRA_ARGS+=" -Dbc.test.data.home=${S}/core/src/test/data" + JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}" + JAVA_TEST_GENTOO_CLASSPATH="junit-4" + + einfo "Testing \"core\"" + JAVA_TEST_RESOURCE_DIRS="core/src/test/resources" + JAVA_TEST_SRC_DIR="core/src/test/java" + pushd core/src/test/java || die + local JAVA_TEST_RUN_ONLY=$(find * \ + -name "AllTests.java" ) + popd || die + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}" + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}" + java-pkg-simple_src_test + + einfo "Testing bcprov" + JAVA_GENTOO_CLASSPATH_EXTRA=":core.jar:libs/unboundid-ldapsdk-6.0.8.jar" + JAVA_TEST_RESOURCE_DIRS="prov/src/test/resources" + JAVA_TEST_SRC_DIR="prov/src/test/java" + pushd prov/src/test/java || die + local JAVA_TEST_RUN_ONLY=$(find * \ + -name "AllTests.java" ) + popd || die + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}" + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}" + java-pkg-simple_src_test +} + +src_install() { + docinto html + dodoc -r docs + java-pkg-simple_src_install +} diff --git a/dev-java/bcprov/files/bcprov-1.79-PKCS12StoreTest.patch b/dev-java/bcprov/files/bcprov-1.79-PKCS12StoreTest.patch new file mode 100644 index 000000000000..b644fa927034 --- /dev/null +++ b/dev-java/bcprov/files/bcprov-1.79-PKCS12StoreTest.patch @@ -0,0 +1,21 @@ +There was 1 failure: +1) testJCE(org.bouncycastle.jce.provider.test.SimpleTestTest) +junit.framework.AssertionFailedError: index 30 PKCS12Store: Exception: java.io.FileNotFoundException: /tmp/PKCS12-AES256-AES128.p12 (Permission denied) + at junit.framework.Assert.fail(Assert.java:57) + at junit.framework.TestCase.fail(TestCase.java:223) + at org.bouncycastle.jce.provider.test.SimpleTestTest.testJCE(SimpleTestTest.java:33) + +FAILURES!!! +Tests run: 1, Failures: 1 + +--- a/prov/src/test/java/org/bouncycastle/jce/provider/test/PKCS12StoreTest.java ++++ b/prov/src/test/java/org/bouncycastle/jce/provider/test/PKCS12StoreTest.java +@@ -2153,7 +2153,7 @@ public class PKCS12StoreTest + + inStore.load(new ByteArrayInputStream(bOut.toByteArray()), passwd); + +- FileOutputStream fOut = new FileOutputStream("/tmp/" + storeType + ".p12"); ++ FileOutputStream fOut = new FileOutputStream(System.getProperty("java.io.tmpdir") + storeType + ".p12"); + fOut.write(bOut.toByteArray()); + fOut.close(); + Key k = inStore.getKey("key", null); |