public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/jss] pqc: Rebased to JSS 5.5.0
@ 2026-07-28 16:49 Endi S. Dewata
  0 siblings, 0 replies; only message in thread
From: Endi S. Dewata @ 2026-07-28 16:49 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/jss
Branch : pqc
Commit : 18e3b27daba28e3ecb75e6ef298b2dc21c52275a
Author : Endi S. Dewata <edewata@redhat.com>
Date   : 2024-02-21T18:18:12-06:00
Stats  : +161/-24 in 3 file(s)
URL    : https://src.fedoraproject.org/rpms/jss/c/18e3b27daba28e3ecb75e6ef298b2dc21c52275a?branch=pqc

Log:
Rebased to JSS 5.5.0

---
diff --git a/.gitignore b/.gitignore
index 1ddcac1..25ef8c4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -45,3 +45,5 @@ jss-4.2.6.tar.gz
 /jss-5.2.0.tar.gz
 /jss-5.3.0.tar.gz
 /jss-5.4.2.tar.gz
+/jss-5.5.0-alpha2.tar.gz
+/jss-5.5.0.tar.gz

diff --git a/jss.spec b/jss.spec
index a3e30bd..5742bef 100644
--- a/jss.spec
+++ b/jss.spec
@@ -6,8 +6,8 @@ Name:           jss
 
 # Upstream version number:
 %global         major_version 5
-%global         minor_version 4
-%global         update_version 2
+%global         minor_version 5
+%global         update_version 0
 
 # Downstream release number:
 # - development/stabilization (unsupported): 0.<n> where n >= 1
@@ -25,9 +25,9 @@ Name:           jss
 
 Summary:        Java Security Services (JSS)
 URL:            https://github.com/dogtagpki/jss
-License:        MPL-1.1 or GPL-2.0-or-later or LGPL-2.1-or-later
-Version:        5.4.2
-Release:        %{release_number}%{?phase:.}%{?phase}%{?timestamp:.}%{?timestamp}%{?commit_id:.}%{?commit_id}%{?dist}.4
+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}
+Release:        %{release_number}%{?phase:.}%{?phase}%{?timestamp:.}%{?timestamp}%{?commit_id:.}%{?commit_id}%{?dist}
 
 # To generate the source tarball:
 # $ git clone https://github.com/dogtagpki/jss.git
@@ -45,10 +45,7 @@ Source:         https://github.com/dogtagpki/jss/archive/v%{version}%{?phase:-}%
 #     > jss-VERSION-RELEASE.patch
 # Patch: jss-VERSION-RELEASE.patch
 
-# https://github.com/dogtagpki/jss/pull/992
-Patch:          jss-5.4.2-nss-3.97.patch
-
-%if 0%{?fedora} && 0%{?fedora} > 35
+%if 0%{?java_arches:1}
 ExclusiveArch: %{java_arches}
 %else
 ExcludeArch: i686
@@ -71,10 +68,10 @@ ExcludeArch: i686
 
 %bcond_without javadoc
 
-# By default the build will not execute unit tests unless --with tests
-# option is specified.
+# By default the tests package will be built and the tests will executed
+# unless --without tests option is specified.
 
-%bcond_with tests
+%bcond_without tests
 
 ################################################################################
 # Build Dependencies
@@ -94,7 +91,6 @@ BuildRequires:  maven-local
 BuildRequires:  mvn(org.apache.commons:commons-lang3)
 BuildRequires:  mvn(org.slf4j:slf4j-api)
 BuildRequires:  mvn(org.slf4j:slf4j-jdk14)
-BuildRequires:  mvn(junit:junit)
 
 %description
 Java Security Services (JSS) is a java native interface which provides a bridge
@@ -121,7 +117,6 @@ Provides:       %{product_id} = %{major_version}.%{minor_version}
 
 Conflicts:      ldapjdk < 4.20
 Conflicts:      idm-console-framework < 1.2
-Conflicts:      tomcatjss < 7.6.0
 Conflicts:      pki-base < 10.10.0
 
 %description -n %{product_id}
@@ -129,6 +124,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).
 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:      dogtag-tomcatjss <= 8.5
+Conflicts:      dogtag-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}
 ################################################################################
 %package -n %{product_id}-javadoc
@@ -145,12 +175,46 @@ Provides:       %{product_id}-javadoc = %{major_version}.%{minor_version}
 This package contains the API documentation for JSS.
 %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
 ################################################################################
 
 %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
 ################################################################################
@@ -171,6 +235,38 @@ export CFLAGS
 # Check if we're in FIPS mode
 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 \
     %{?_verbose:-v} \
     --work-dir=%{_vpath_builddir} \
@@ -183,41 +279,80 @@ modutil -dbdir /etc/pki/nssdb -chkfips true | grep -q enabled && export FIPS_ENA
     --java-home=%{java_home} \
     --jni-dir=%{_jnidir} \
     --version=%{version} \
-    %{!?with_javadoc:--without-javadoc} \
-    %{?with_tests:--with-tests} \
+    --without-java \
+    --without-javadoc \
+    %{!?with_tests:--without-tests} \
     dist
 
 ################################################################################
 %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 \
     %{?_verbose:-v} \
     --work-dir=%{_vpath_builddir} \
     --install-dir=%{buildroot} \
+    --without-java \
     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
 %license MPL-1.1.txt gpl.txt lgpl.txt symkey/LICENSE
-%{_libdir}/*
-%{_jnidir}/*
+%{_javadir}/jss/jss.jar
+%{_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}
 ################################################################################
-%files -n %{product_id}-javadoc
+%files -n %{product_id}-javadoc -f .mfiles-javadoc
 ################################################################################
+%endif
 
-%defattr(-,root,root,-)
-%{_javadocdir}/jss/
+%if %{with tests}
+################################################################################
+%files -n %{product_id}-tests
+################################################################################
+
+%{_datadir}/jss/tests/
+
+# with tests
 %endif
 
 ################################################################################
 %changelog
+* Wed Feb 21 2024 Dogtag PKI Team <devel@lists.dogtagpki.org> 5.5.0-1
+- Rebase to JSS 5.5.0
+
 * Thu Feb 08 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 5.4.2-1.4
 - Fix compatibility with NSS 3.97
 

diff --git a/sources b/sources
index 5f64e0c..645ec2a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (jss-5.4.2.tar.gz) = 8e5c0ed93d8bafbfd8a8f822aaeda5d4b60e7609aa24f793eb3c449918a4a23884a55966f40d66d810e9b56114eb7cefb8dfeee565fe680c79ef876bc9acfefa
+SHA512 (jss-5.5.0.tar.gz) = bda0b4df1ef08a264525c9124a29f57945e3a24adadda609b54032d840a1c311d522e34f29bb2246d03d493d108d425a64e4826edcc8a296a2f55b1cdd8a95c0

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-07-28 16:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-28 16:49 [rpms/jss] pqc: Rebased to JSS 5.5.0 Endi S. Dewata

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox