Sync from SUSE:ALP:Source:Standard:1.0 bouncycastle revision 50674072dde36ada985622db984421ba

This commit is contained in:
Adrian Schröter 2024-02-19 15:36:01 +01:00
commit 5ddc26d9ca
15 changed files with 2083 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

10
_constraints Normal file
View File

@ -0,0 +1,10 @@
<constraints>
<hardware>
<physicalmemory>
<size unit="M">4096</size>
</physicalmemory>
<disk>
<size unit="G">10</size>
</disk>
</hardware>
</constraints>

52
bcjmail-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcjmail-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle Jakarta S/MIME API</name>
<version>1.77</version>
<description>The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols. This jar contains S/MIME APIs for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs. The Jakarta Mail API and the Jakarta activation framework will also be needed.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcutil-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
</dependencies>
</project>

52
bcmail-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcmail-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle S/MIME API</name>
<version>1.77</version>
<description>The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols. This jar contains S/MIME APIs for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs. The JavaMail API and the Java activation framework will also be needed.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcutil-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
</dependencies>
</project>

45
bcpg-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpg-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle OpenPGP API</name>
<version>1.77</version>
<description>The Bouncy Castle Java API for handling the OpenPGP protocol. This jar contains the OpenPGP API for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
<license>
<name>Apache Software License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
</dependencies>
</project>

46
bcpkix-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs</name>
<version>1.77</version>
<description>The Bouncy Castle Java APIs for CMS, PKCS, EAC, TSP, CMP, CRMF, OCSP, and certificate generation. This jar contains APIs for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcutil-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
</dependencies>
</project>

32
bcprov-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle Provider</name>
<version>1.77</version>
<description>The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.8 and up.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
</project>

46
bctls-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bctls-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle JSSE provider and TLS/DTLS API</name>
<version>1.77</version>
<description>The Bouncy Castle Java APIs for TLS and DTLS, including a provider for the JSSE.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcutil-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
</dependencies>
</project>

40
bcutil-jdk18on-1.77.pom Normal file
View File

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.bouncycastle</groupId>
<artifactId>bcutil-jdk18on</artifactId>
<packaging>jar</packaging>
<name>Bouncy Castle ASN.1 Extension and Utility APIs</name>
<version>1.77</version>
<description>The Bouncy Castle Java APIs for ASN.1 extension and utility APIs used to support bcpkix and bctls. This jar contains APIs for JDK 1.8 and up.</description>
<url>https://www.bouncycastle.org/java.html</url>
<licenses>
<license>
<name>Bouncy Castle Licence</name>
<url>https://www.bouncycastle.org/licence.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/bcgit/bc-java</url>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/bcgit/bc-java/issues</url>
</issueManagement>
<developers>
<developer>
<id>feedback-crypto</id>
<name>The Legion of the Bouncy Castle Inc.</name>
<email>feedback-crypto@bouncycastle.org</email>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk18on</artifactId>
<version>1.77</version>
<type>jar</type>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,13 @@
--- bc-java-r1rv74/ant/bc+-build.xml 2023-06-20 19:05:22.282198904 +0200
+++ bc-java-r1rv74/ant/bc+-build.xml 2023-06-20 19:05:37.274299814 +0200
@@ -245,8 +245,8 @@
<element name="docElements" />
<sequential>
<mkdir dir="@{docsDir}" />
- <javadoc maxmemory="384m" sourcepath="@{srcDir}"
- destdir="@{docsDir}"
+ <javadoc maxmemory="384m" sourcepath="@{srcDir}" source="${bc.javac.source}"
+ destdir="@{docsDir}" encoding="utf-8"
windowtitle="Bouncy Castle Library ${release.name} API Specification"
header="&lt;b&gt;Bouncy Castle Cryptography Library ${release.name}&lt;/b&gt;">
<docElements/>

160
bouncycastle-notests.patch Normal file
View File

@ -0,0 +1,160 @@
Index: bc-java-r1rv76/ant/bc+-build.xml
===================================================================
--- bc-java-r1rv76.orig/ant/bc+-build.xml
+++ bc-java-r1rv76/ant/bc+-build.xml
@@ -280,7 +280,7 @@
</target>
- <target name="build" depends="initMacros, build-lw, build-libraries, build-test" />
+ <target name="build" depends="initMacros, build-lw, build-libraries" />
<target name="build-lw" depends="initMacros">
<!--
@@ -935,146 +935,6 @@
</target>
- <!--
- Tests
- -->
- <target name="build-test" depends="initMacros">
- <property name="test.target" value="bctest-${target.name}" />
-
- <mkdir dir="${artifacts.jars.dir}" />
-
- <property name="test.target.dir" value="${artifacts.dir}/${test.target}" />
- <property name="test.target.src.dir" value="${test.target.dir}/src" />
-
- <mkdir dir="${test.target.dir}" />
-
- <copyStandardFiles toDir="${test.target.dir}" />
-
- <copy todir="${test.target.src.dir}">
- <fileset dir="${src.dir}" includes="/org/bouncycastle/test/*.java" />
- <fileset dir="${src.dir}" includes="**/*AllTests.java" />
- <fileset dir="${src.dir}" includes="**/math/**/*Test.java" />
- <fileset dir="${src.dir}" includes="**/crypto/*/*Test.java" />
- <fileset dir="${src.dir}" includes="**/tsp/*UnitTest.java" />
- <fileset dir="${src.dir}" includes="**/utiltest/*Test.java" />
- <fileset dir="${src.dir}" includes="**/util/io/pem/*Test.java" />
- <fileset dir="${src.dir}" includes="**/test/*.java" />
- <fileset dir="${src.dir}" includes="**/test/*/*.java" />
- <fileset dir="${src.dir}" includes="**/*.asc" />
- <fileset dir="${src.dir}" includes="**/*.pem" />
- <fileset dir="${src.dir}" includes="**/*.p7m" />
- <fileset dir="${src.dir}" includes="**/*.eml" />
- <fileset dir="${src.dir}" includes="**/*.sig" />
- <fileset dir="${src.dir}" includes="**/*.data" />
- <fileset dir="${src.dir}" includes="**/*.der" />
- <fileset dir="${src.dir}" includes="**/*.crt" />
- <fileset dir="${src.dir}" includes="**/*.key" />
- <fileset dir="${src.dir}" includes="**/*.cer" />
- <fileset dir="${src.dir}" includes="**/*.bin" />
- <fileset dir="${src.dir}" includes="**/*.ers" />
- <fileset dir="${src.dir}" includes="**/*.oer" />
- <fileset dir="${src.dir}" includes="**/*.kbx" />
- <fileset dir="${src.dir}" includes="**/*.crl" />
- <fileset dir="${src.dir}" includes="**/*.csr" />
- <fileset dir="${src.dir}" includes="**/*.txt" />
- <fileset dir="${src.dir}" includes="**/*.rsp" />
- <fileset dir="${src.dir}" includes="**/*.gpg" />
- <fileset dir="${src.dir}" includes="**/*.pgp" />
- <fileset dir="${src.dir}" includes="**/*.pub" />
- <fileset dir="${src.dir}" includes="**/*.sec" />
- <fileset dir="${src.dir}" includes="**/*.cvcert" />
- <fileset dir="${src.dir}" includes="**/*.properties" />
- <fileset dir="${src.dir}" includes="**/*.message" />
- </copy>
-
- <delete file="${test.target.src.dir}/org/bouncycastle/pqc/crypto/lms/AllTests.java" />
- <delete file="${test.target.src.dir}/org/bouncycastle/x509/CertPathReviewerMessages_de.properties" />
- <delete file="${test.target.src.dir}/org/bouncycastle/x509/CertPathReviewerMessages.properties" />
-
- <compile-test target="${test.target}">
- <manifestElements>
- <attribute name="Manifest-Version" value="1.0" />
- <attribute name="Extension-Name" value="org.bouncycastle.bctest" />
- <attribute name="Specification-Vendor" value="BouncyCastle.org" />
- <attribute name="Specification-Version" value="1.1" />
- <attribute name="Implementation-Vendor-Id" value="org.bouncycastle" />
- <attribute name="Implementation-Vendor" value="BouncyCastle.org" />
- <attribute name="Implementation-Version" value="${release.version}.0" />
- <attribute name="Application-Name" value="Bouncy Castle Test Classes" />
- <attribute name="Trusted-Library" value="true" />
- <attribute name="Permissions" value="all-permissions" />
- <attribute name="Codebase" value="*" />
- <attribute name="Application-Library-Allowable-Codebase" value="*" />
- <attribute name="Caller-Allowable-Codebase" value="*" />
- </manifestElements>
- </compile-test>
- </target>
-
- <target name="test">
- <property name="test.target" value="bctest-${target.name}" />
- <property name="test.target.dir" value="${artifacts.dir}/${test.target}" />
- <property name="test.target.src.dir" value="${test.target.dir}/src" />
-
- <mkdir dir="${basedir}/${build.dir}/${target.prefix}" />
- <junit fork="yes" dir="${basedir}/${build.dir}/${target.prefix}" failureProperty="test.failed" printsummary="${junit.printsummary}">
- <classpath>
- <path refid="project.classpath" />
- <fileset dir="${artifacts.jars.dir}">
- <include name="**/*.jar" />
- <exclude name="**/bcprov-jdk*.jar" />
- <exclude name="**/bcjmail-jdk*.jar" />
- </fileset>
- </classpath>
- <sysproperty key="bc.test.data.home" value="../../core/src/test/data" />
-
- <formatter type="xml" />
- <batchtest todir="${artifacts.reports.xml.dir}" unless="testcase">
- <fileset dir="${test.target.src.dir}">
- <include name="**/AllTests.java" />
- <exclude name="${env.JUNIT_EXCLUDE_TESTS}" if="env.JUNIT_EXCLUDE_TESTS" />
- </fileset>
- </batchtest>
- </junit>
-
- <junitreport todir="${artifacts.reports.xml.dir}">
- <fileset dir="${artifacts.reports.xml.dir}">
- <include name="TEST-*.xml" />
- </fileset>
- <report format="frames" todir="${artifacts.reports.html.dir}" />
- </junitreport>
-
- <fail if="test.failed"/>
- </target>
-
- <target name="test-lw">
- <junit fork="yes" dir="${basedir}/${build.dir}/${target.prefix}" failureProperty="test.failed">
- <classpath>
- <fileset dir="${artifacts.jars.dir}">
- <include name="**/*.jar" />
- <exclude name="**/bcprov-jdk*.jar" />
- </fileset>
- </classpath>
-
- <formatter type="xml" />
- <test name="${testcase}" todir="${artifacts.reports.xml.dir}" if="testcase" />
- <batchtest todir="${artifacts.reports.xml.dir}" unless="testcase">
- <fileset dir="${src.dir}">
- <include name="**/crypto/test/AllTests.java" />
- <include name="**/asn1/test/AllTests.java" />
- <include name="**/encoders/test/AllTests.java" />
- <include name="**/ntru/**/AllTests.java" />
- </fileset>
- </batchtest>
- </junit>
-
- <junitreport todir="${artifacts.reports.xml.dir}">
- <fileset dir="${artifacts.reports.xml.dir}">
- <include name="TEST-*.xml" />
- </fileset>
- <report format="frames" todir="${artifacts.reports.html.dir}" />
- </junitreport>
- </target>
-
<target name="javadoc-libraries" depends="javadoc-util, javadoc-pkix, javadoc-mail, javadoc-jmail, javadoc-pg" />
<!--

72
bouncycastle-osgi.patch Normal file

File diff suppressed because one or more lines are too long

1241
bouncycastle.changes Normal file

File diff suppressed because it is too large Load Diff

248
bouncycastle.spec Normal file
View File

@ -0,0 +1,248 @@
#
# spec file for package bouncycastle
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global ver_major 1
%global ver_minor 77
%global gittag r%{ver_major}rv%{ver_minor}
%global archivever jdk18on-%{ver_major}%{ver_minor}
%global classname org.bouncycastle.jce.provider.BouncyCastleProvider
Name: bouncycastle
Version: %{ver_major}.%{ver_minor}
Release: 0
Summary: Bouncy Castle Cryptography APIs for Java
License: Apache-2.0 AND MIT
Group: Development/Libraries/Java
URL: https://www.bouncycastle.org
Source0: https://github.com/bcgit/bc-java/archive/%{gittag}.tar.gz
# POMs from Maven Central
Source1: https://repo1.maven.org/maven2/org/%{name}/bcprov-jdk18on/%{version}/bcprov-jdk18on-%{version}.pom
Source2: https://repo1.maven.org/maven2/org/%{name}/bcpkix-jdk18on/%{version}/bcpkix-jdk18on-%{version}.pom
Source3: https://repo1.maven.org/maven2/org/%{name}/bcpg-jdk18on/%{version}/bcpg-jdk18on-%{version}.pom
Source4: https://repo1.maven.org/maven2/org/%{name}/bcmail-jdk18on/%{version}/bcmail-jdk18on-%{version}.pom
Source5: https://repo1.maven.org/maven2/org/%{name}/bctls-jdk18on/%{version}/bctls-jdk18on-%{version}.pom
Source6: https://repo1.maven.org/maven2/org/%{name}/bcutil-jdk18on/%{version}/bcutil-jdk18on-%{version}.pom
Source7: https://repo1.maven.org/maven2/org/%{name}/bcjmail-jdk18on/%{version}/bcjmail-jdk18on-%{version}.pom
# PATCH-FIX-OPENSUSE Fix javadoc build
Patch0: bouncycastle-javadoc.patch
# PATCH-FIX-OPENSUSE Add OSGi manifests to the distributed jars
Patch1: bouncycastle-osgi.patch
Patch2: bouncycastle-notests.patch
BuildRequires: ant
BuildRequires: ant-junit
BuildRequires: fdupes
BuildRequires: glassfish-activation-api
BuildRequires: jakarta-activation
BuildRequires: jakarta-mail
BuildRequires: javamail
BuildRequires: javapackages-local >= 6
Requires(post): javapackages-tools
Requires(postun):javapackages-tools
Provides: bcprov = %{version}-%{release}
BuildArch: noarch
%description
The Bouncy Castle Crypto package is a Java implementation of cryptographic
algorithms. This jar contains JCE provider and lightweight API for the
Bouncy Castle Cryptography APIs for JDK 1.5 to JDK 1.8.
%package pkix
Summary: Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs
License: MIT
Group: Development/Libraries/Java
%description pkix
The Bouncy Castle Java APIs for CMS, PKCS, EAC, TSP, CMP, CRMF, OCSP, and
certificate generation. This jar contains APIs for JDK 1.5 to JDK 1.8. The
APIs can be used in conjunction with a JCE/JCA provider such as the one
provided with the Bouncy Castle Cryptography APIs.
%package pg
Summary: Bouncy Castle OpenPGP API
License: Apache-2.0 AND MIT
Group: Development/Libraries/Java
%description pg
The Bouncy Castle Java API for handling the OpenPGP protocol.The APIs can be
used in conjunction with a JCE/JCA provider such as the one provided with the
Bouncy Castle Cryptography APIs.
%package mail
Summary: Bouncy Castle S/MIME API
License: MIT
Group: Development/Libraries/Java
%description mail
The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols. The APIs can
be used in conjunction with a JCE/JCA provider such as the one provided with
the Bouncy Castle Cryptography APIs. The JavaMail API and the Java activation
framework will also be needed.
%package jmail
Summary: Bouncy Castle Jakarta S/MIME API
License: MIT
Group: Development/Libraries/Java
Requires: %{name} = %{version}
%description jmail
The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols. This jar
contains S/MIME APIs for JDK 1.8 and up. The APIs can be used in conjunction
with a JCE/JCA provider such as the one provided with the Bouncy Castle
Cryptography APIs. The Jakarta Mail API and the Jakarta activation framework
will also be needed.
%package tls
Summary: Bouncy Castle JSSE provider and TLS/DTLS API
License: MIT
Group: Development/Libraries/Java
%description tls
The Bouncy Castle Java APIs for TLS and DTLS, including a provider for the
JSSE.
%package util
Summary: Bouncy Castle ASN.1 Extension and Utility APIs
License: MIT
Group: Development/Libraries/Java
%description util
The Bouncy Castle Java APIs for ASN.1 extension and utility APIs used to
support bcpkix and bctls.
%package javadoc
Summary: Javadoc for %{name}
License: MIT
Group: Development/Libraries/Java
%description javadoc
API documentation for the Bouncy Castle Cryptography APIs.
%prep
%autosetup -p1 -n bc-java-%{gittag}
# Remove provided binaries
find . -type f -name "*.class" -exec rm -f {} \;
find . -type f -name "*.jar" -exec rm -f {} \;
%build
echo "package.version:\ %{version}" >> bc-build.properties
echo "bundle.version:\ %{version}.0" >> bc-build.properties
ant -f ant/jdk18+.xml \
-Dbc.javac.source=8 -Dbc.javac.target=8 \
-Djunit.jar.home=$(build-classpath junit) \
-Dmail.jar.home=$(build-classpath javax.mail) \
-Djmail.jar.home=$(build-classpath jakarta-mail) \
-Dactivation.jar.home=$(build-classpath glassfish-activation-api) \
-Djactivation.jar.home=$(build-classpath jakarta-activation) \
-Drelease.debug=true \
clean build-provider build
# Not shipping the "lcrypto" jar, so don't ship the javadoc for it
rm -rf build/artifacts/jdk1.8/javadoc/lcrypto
%install
install -dm 755 %{buildroot}%{_sysconfdir}/java/security/security.d
touch %{buildroot}%{_sysconfdir}/java/security/security.d/2000-%{classname}
install -dm 0755 %{buildroot}%{_javadir}
install -dm 0755 %{buildroot}%{_mavenpomdir}
for bc in bcprov bcpkix bcpg bcmail bctls bcutil bcjmail ; do
install -pm 0644 build/artifacts/jdk1.8/jars/$bc-%{archivever}.jar %{buildroot}%{_javadir}/$bc.jar
%{mvn_install_pom} %{_sourcedir}/$bc-jdk18on-%{version}.pom %{buildroot}%{_mavenpomdir}/$bc.pom
%add_maven_depmap $bc.pom $bc.jar -a "org.bouncycastle:$bc-jdk18,org.bouncycastle:$bc-jdk16,org.bouncycastle:$bc-jdk15on,org.bouncycastle:$bc-jdk15,org.bouncycastle:$bc-jdk15to18" -f $bc
done
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
cp -r build/artifacts/jdk1.8/javadoc/* %{buildroot}%{_javadocdir}/%{name}/
%fdupes -s %{buildroot}%{_javadocdir}
%post
{
# Rebuild the list of security providers in classpath.security
suffix=security/classpath.security
secfiles="%{_prefix}/lib/$suffix %{_libdir}/$suffix"
for secfile in $secfiles
do
# check if this classpath.security file exists
[ -f "$secfile" ] || continue
sed -i '/^security\.provider\./d' "$secfile"
count=0
for provider in $(ls %{_sysconfdir}/java/security/security.d)
do
count=$((count + 1))
echo "security.provider.${count}=${provider#*-}" >> "$secfile"
done
done
} || :
%postun
if [ $1 -eq 0 ] ; then
{
# Rebuild the list of security providers in classpath.security
suffix=security/classpath.security
secfiles="%{_prefix}/lib/$suffix %{_libdir}/$suffix"
for secfile in $secfiles
do
# check if this classpath.security file exists
[ -f "$secfile" ] || continue
sed -i '/^security\.provider\./d' "$secfile"
count=0
for provider in $(ls %{_sysconfdir}/java/security/security.d)
do
count=$((count + 1))
echo "security.provider.${count}=${provider#*-}" >> "$secfile"
done
done
} || :
fi
%files -f .mfiles-bcprov
%license build/artifacts/jdk1.8/bcprov-jdk18on-*/LICENSE.html
%doc docs/ *.html
%config(noreplace) %{_sysconfdir}/java/security/security.d/2000-%{classname}
%files pkix -f .mfiles-bcpkix
%license build/artifacts/jdk1.8/bcpkix-jdk18on-*/LICENSE.html
%files pg -f .mfiles-bcpg
%license build/artifacts/jdk1.8/bcpg-jdk18on-*/LICENSE.html
%files mail -f .mfiles-bcmail
%license build/artifacts/jdk1.8/bcmail-jdk18on-*/LICENSE.html
%files jmail -f .mfiles-bcjmail
%license build/artifacts/jdk1.8/bcjmail-jdk18on-*/LICENSE.html
%files tls -f .mfiles-bctls
%license build/artifacts/jdk1.8/bctls-jdk18on-*/LICENSE.html
%files util -f .mfiles-bcutil
%license build/artifacts/jdk1.8/bcutil-jdk18on-*/LICENSE.html
%files javadoc
%{_javadocdir}/%{name}
%license LICENSE.html
%changelog

BIN
r1rv77.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.