import UBI jss-5.5.0-1.el9

This commit is contained in:
eabdullin 2024-04-30 15:13:14 +00:00
parent e5e9f17475
commit 89f7e8dbe1
3 changed files with 167 additions and 19 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/jss-5.4.1.tar.gz SOURCES/jss-5.5.0.tar.gz

View File

@ -1 +1 @@
e5418bf90626b135ab43e0caefa04c4b1c6763fa SOURCES/jss-5.4.1.tar.gz 6676c7d420ad45f610e9f5ba7513e77186ddb5be SOURCES/jss-5.5.0.tar.gz

View File

@ -6,13 +6,13 @@ Name: jss
# Upstream version number: # Upstream version number:
%global major_version 5 %global major_version 5
%global minor_version 4 %global minor_version 5
%global update_version 1 %global update_version 0
# Downstream release number: # Downstream release number:
# - development/stabilization (unsupported): 0.<n> where n >= 1 # - development/stabilization (unsupported): 0.<n> where n >= 1
# - GA/update (supported): <n> where n >= 1 # - GA/update (supported): <n> where n >= 1
%global release_number 2 %global release_number 1
# Development phase: # Development phase:
# - development (unsupported): alpha<n> where n >= 1 # - development (unsupported): alpha<n> where n >= 1
@ -25,7 +25,7 @@ Name: jss
Summary: Java Security Services (JSS) Summary: Java Security Services (JSS)
URL: https://github.com/dogtagpki/jss URL: https://github.com/dogtagpki/jss
License: MPLv1.1 or GPLv2+ or LGPLv2+ License: (MPL-1.1 or GPL-2.0-or-later or LGPL-2.1-or-later) and Apache-2.0
Version: %{major_version}.%{minor_version}.%{update_version} Version: %{major_version}.%{minor_version}.%{update_version}
Release: %{release_number}%{?phase:.}%{?phase}%{?timestamp:.}%{?timestamp}%{?commit_id:.}%{?commit_id}%{?dist} Release: %{release_number}%{?phase:.}%{?phase}%{?timestamp:.}%{?timestamp}%{?commit_id:.}%{?commit_id}%{?dist}
@ -45,7 +45,7 @@ Source: https://github.com/dogtagpki/jss/archive/v%{version}%{?phase:-}%
# > jss-VERSION-RELEASE.patch # > jss-VERSION-RELEASE.patch
# Patch: jss-VERSION-RELEASE.patch # Patch: jss-VERSION-RELEASE.patch
%if 0%{?fedora} && 0%{?fedora} > 35 %if 0%{?java_arches:1}
ExclusiveArch: %{java_arches} ExclusiveArch: %{java_arches}
%else %else
ExcludeArch: i686 ExcludeArch: i686
@ -118,7 +118,6 @@ Provides: %{product_id} = %{major_version}.%{minor_version}
Conflicts: ldapjdk < 4.20 Conflicts: ldapjdk < 4.20
Conflicts: idm-console-framework < 1.2 Conflicts: idm-console-framework < 1.2
Conflicts: tomcatjss < 7.6.0
Conflicts: pki-base < 10.10.0 Conflicts: pki-base < 10.10.0
%description -n %{product_id} %description -n %{product_id}
@ -126,6 +125,41 @@ Java Security Services (JSS) is a java native interface which provides a bridge
for java-based applications to use native Network Security Services (NSS). for java-based applications to use native Network Security Services (NSS).
This only works with gcj. Other JREs require that JCE providers be signed. This only works with gcj. Other JREs require that JCE providers be signed.
################################################################################
%package -n %{product_id}-tomcat
################################################################################
Summary: Java Security Services (JSS) Connector for Tomcat
# Tomcat
BuildRequires: mvn(org.apache.tomcat:tomcat-catalina) >= 9.0.62
BuildRequires: mvn(org.apache.tomcat:tomcat-coyote) >= 9.0.62
BuildRequires: mvn(org.apache.tomcat:tomcat-juli) >= 9.0.62
Requires: %{product_id} = %{version}-%{release}
Requires: mvn(org.apache.tomcat:tomcat-catalina) >= 9.0.62
Requires: mvn(org.apache.tomcat:tomcat-coyote) >= 9.0.62
Requires: mvn(org.apache.tomcat:tomcat-juli) >= 9.0.62
# Tomcat JSS has been replaced with JSS Connector for Tomcat.
# This will remove installed Tomcat JSS packages.
Obsoletes: tomcatjss <= 8.5
Conflicts: tomcatjss <= 8.5
Obsoletes: idm-tomcatjss <= 8.5
Conflicts: idm-tomcatjss <= 8.5
%if 0%{?rhel} <= 8
# PKI Servlet Engine has been replaced with Tomcat.
# This will remove installed PKI Servlet Engine packages.
Obsoletes: pki-servlet-engine <= 9.0
Conflicts: pki-servlet-engine <= 9.0
%endif
%description -n %{product_id}-tomcat
JSS Connector for Tomcat is a Java Secure Socket Extension (JSSE)
module for Apache Tomcat that uses Java Security Services (JSS),
a Java interface to Network Security Services (NSS).
%if %{with javadoc} %if %{with javadoc}
################################################################################ ################################################################################
%package -n %{product_id}-javadoc %package -n %{product_id}-javadoc
@ -142,12 +176,46 @@ Provides: %{product_id}-javadoc = %{major_version}.%{minor_version}
This package contains the API documentation for JSS. This package contains the API documentation for JSS.
%endif %endif
%if %{with tests}
################################################################################
%package -n %{product_id}-tests
################################################################################
Summary: Java Security Services (JSS) Tests
BuildRequires: mvn(org.junit.jupiter:junit-jupiter)
BuildRequires: mvn(org.opentest4j:opentest4j)
%description -n %{product_id}-tests
This package provides test suite for JSS.
# with tests
%endif
################################################################################ ################################################################################
%prep %prep
################################################################################ ################################################################################
%autosetup -n jss-%{version}%{?phase:-}%{?phase} -p 1 %autosetup -n jss-%{version}%{?phase:-}%{?phase} -p 1
# disable native modules since they will be built by CMake
%pom_disable_module native
%pom_disable_module symkey
# do not ship examples
%pom_disable_module examples
# flatten-maven-plugin is not available in RPM
%pom_remove_plugin org.codehaus.mojo:flatten-maven-plugin
# specify Maven artifact locations
%mvn_file org.dogtagpki.jss:jss-tomcat jss/jss-tomcat
%mvn_file org.dogtagpki.jss:jss-tomcat-9.0 jss/jss-tomcat-9.0
# specify Maven artifact packages
%mvn_package org.dogtagpki.jss:jss-tomcat jss-tomcat
%mvn_package org.dogtagpki.jss:jss-tomcat-9.0 jss-tomcat
################################################################################ ################################################################################
%build %build
################################################################################ ################################################################################
@ -168,6 +236,38 @@ export CFLAGS
# Check if we're in FIPS mode # Check if we're in FIPS mode
modutil -dbdir /etc/pki/nssdb -chkfips true | grep -q enabled && export FIPS_ENABLED=1 modutil -dbdir /etc/pki/nssdb -chkfips true | grep -q enabled && export FIPS_ENABLED=1
# build Java code, run Java tests, and build Javadoc with Maven
%mvn_build %{!?with_tests:-f} %{!?with_javadoc:-j}
# create links to Maven-built classes for CMake
mkdir -p %{_vpath_builddir}/classes/jss
ln -sf ../../../base/target/classes/org %{_vpath_builddir}/classes/jss
%if %{with tests}
mkdir -p %{_vpath_builddir}/classes/tests
ln -sf ../../../base/target/test-classes/org %{_vpath_builddir}/classes/tests
%endif
# create links to Maven-built JAR files for CMake
ln -sf ../base/target/jss.jar %{_vpath_builddir}
%if %{with tests}
ln -sf ../base/target/jss-tests.jar %{_vpath_builddir}
%endif
# create links to Maven-built headers for CMake
mkdir -p %{_vpath_builddir}/include/jss
ln -sf ../../../base/target/include/_jni %{_vpath_builddir}/include/jss/_jni
# mark Maven-built targets so that CMake will not rebuild them
mkdir -p %{_vpath_builddir}/.targets
touch %{_vpath_builddir}/.targets/finished_generate_java
%if %{with tests}
touch %{_vpath_builddir}/.targets/finished_tests_generate_java
%endif
%if %{with javadoc}
touch %{_vpath_builddir}/.targets/finished_generate_javadocs
%endif
# build native code and run native tests with CMake
./build.sh \ ./build.sh \
%{?_verbose:-v} \ %{?_verbose:-v} \
--work-dir=%{_vpath_builddir} \ --work-dir=%{_vpath_builddir} \
@ -180,43 +280,91 @@ modutil -dbdir /etc/pki/nssdb -chkfips true | grep -q enabled && export FIPS_ENA
--java-home=%{java_home} \ --java-home=%{java_home} \
--jni-dir=%{_jnidir} \ --jni-dir=%{_jnidir} \
--version=%{version} \ --version=%{version} \
%{!?with_javadoc:--without-javadoc} \ --without-java \
%{?with_tests:--with-tests} \ --without-javadoc \
%{!?with_tests:--without-tests} \
dist dist
################################################################################ ################################################################################
%install %install
################################################################################ ################################################################################
# install Java binaries and Javadoc
%mvn_install
# install jss.jar
mkdir -p %{buildroot}%{_javadir}/jss
cp base/target/jss.jar %{buildroot}%{_javadir}/jss/jss.jar
# create links for backward compatibility
mkdir -p %{buildroot}%{_jnidir}
ln -sf ../../..%{_javadir}/jss/jss.jar %{buildroot}%{_jnidir}/jss.jar
mkdir -p %{buildroot}%{_libdir}/jss
ln -sf ../../..%{_javadir}/jss/jss.jar %{buildroot}%{_libdir}/jss/jss.jar
# install native binaries
./build.sh \ ./build.sh \
%{?_verbose:-v} \ %{?_verbose:-v} \
--work-dir=%{_vpath_builddir} \ --work-dir=%{_vpath_builddir} \
--install-dir=%{buildroot} \ --install-dir=%{buildroot} \
--without-java \
install install
# install tests binaries
%if %{with tests}
mkdir -p %{buildroot}%{_datadir}/jss/tests/lib
cp base/target/jss-tests.jar %{buildroot}%{_datadir}/jss/tests/lib
%endif
################################################################################ ################################################################################
%files -n %{product_id} %files -n %{product_id} -f .mfiles
################################################################################ ################################################################################
%defattr(-,root,root,-)
%doc jss.html %doc jss.html
%license MPL-1.1.txt gpl.txt lgpl.txt symkey/LICENSE %license MPL-1.1.txt gpl.txt lgpl.txt symkey/LICENSE
%{_libdir}/* %{_javadir}/jss/jss.jar
%{_jnidir}/* %{_jnidir}/jss.jar
%{_libdir}/jss/jss.jar
%{_libdir}/jss/libjss.so
%{_libdir}/jss/libjss-symkey.so
################################################################################
%files -n %{product_id}-tomcat -f .mfiles-jss-tomcat
################################################################################
%if %{with javadoc} %if %{with javadoc}
################################################################################ ################################################################################
%files -n %{product_id}-javadoc %files -n %{product_id}-javadoc -f .mfiles-javadoc
################################################################################
%endif
%if %{with tests}
################################################################################
%files -n %{product_id}-tests
################################################################################ ################################################################################
%defattr(-,root,root,-) %{_datadir}/jss/tests/
%{_javadocdir}/jss/
# with tests
%endif %endif
################################################################################ ################################################################################
%changelog %changelog
* Wed May 31 2023 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.4.1-1 * Wed Feb 21 2024 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.5.0-1
- Rebase to JSS 5.4.1 - Rebase to JSS 5.5.0
* Thu Feb 01 2024 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.5.0-0.4
- Rebuild with side tag
* Mon Jan 29 2024 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.5.0-0.3
- Add Obsoletes/Conflicts for idm-tomcatjss
* Mon Dec 11 2023 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.5.0-0.2
- Rebuild with side tag
* Wed Dec 06 2023 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.5.0-0.1
- Rebase to JSS 5.5.0-alpha3
* Thu Feb 09 2023 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.3.0-1 * Thu Feb 09 2023 Red Hat PKI Team <rhcs-maint@redhat.com> - 5.3.0-1
- Rebase to JSS 5.3.0 - Rebase to JSS 5.3.0