diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..52b077b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/jss-4.6.0.tar.gz diff --git a/.jss.metadata b/.jss.metadata new file mode 100644 index 0000000..cb4e805 --- /dev/null +++ b/.jss.metadata @@ -0,0 +1 @@ +3d6d2d885129e0d7d8ebac5dfe9055c693a7a9b1 SOURCES/jss-4.6.0.tar.gz diff --git a/SOURCES/jss-disable-buffer-based-tests.patch b/SOURCES/jss-disable-buffer-based-tests.patch new file mode 100644 index 0000000..f39763a --- /dev/null +++ b/SOURCES/jss-disable-buffer-based-tests.patch @@ -0,0 +1,71 @@ +From d7d6d769b510118e40d9c0919317665c4c9feb8d Mon Sep 17 00:00:00 2001 +From: Alexander Scheel +Date: Wed, 12 Jun 2019 17:17:45 -0400 +Subject: [PATCH] Disable buffer-based tests + +Signed-off-by: Alexander Scheel +--- + cmake/JSSTests.cmake | 33 --------------------------------- + 1 file changed, 33 deletions(-) + +diff --git a/cmake/JSSTests.cmake b/cmake/JSSTests.cmake +index b389be5c..473d7d4d 100644 +--- a/cmake/JSSTests.cmake ++++ b/cmake/JSSTests.cmake +@@ -78,24 +78,6 @@ macro(jss_tests) + NAME "BigObjectIdentifier" + COMMAND "org.mozilla.jss.tests.BigObjectIdentifier" + ) +- jss_test_java( +- NAME "JSS_Test_PR_FileDesc" +- COMMAND "org.mozilla.jss.tests.TestPRFD" +- ) +- jss_test_java( +- NAME "JSS_Test_Raw_SSL" +- COMMAND "org.mozilla.jss.tests.TestRawSSL" "${RESULTS_NSSDB_OUTPUT_DIR}" +- DEPENDS "Setup_DBs" +- ) +- jss_test_java( +- NAME "JSS_Test_Buffer" +- COMMAND "org.mozilla.jss.tests.TestBuffer" +- ) +- jss_test_java( +- NAME "JSS_Test_BufferPRFD" +- COMMAND "org.mozilla.jss.tests.TestBufferPRFD" "${RESULTS_NSSDB_OUTPUT_DIR}" "${DB_PWD}" +- DEPENDS "List_CA_certs" +- ) + if ((${Java_VERSION_MAJOR} EQUAL 1) AND (${Java_VERSION_MINOR} LESS 9)) + jss_test_java( + NAME "Test_PKCS11Constants.java_for_Sun_compatibility" +@@ -126,16 +108,6 @@ macro(jss_tests) + NAME "JUnit_UTF8StringTest" + COMMAND "org.junit.runner.JUnitCore" "org.mozilla.jss.tests.UTF8StringTest" + ) +- jss_test_exec( +- NAME "buffer_size_1" +- COMMAND "${BIN_OUTPUT_DIR}/buffer_size_1" +- DEPENDS "generate_c_buffer_size_1" +- ) +- jss_test_exec( +- NAME "buffer_size_4" +- COMMAND "${BIN_OUTPUT_DIR}/buffer_size_4" +- DEPENDS "generate_c_buffer_size_4" +- ) + jss_test_java( + NAME "JUnit_ChainSortingTest" + COMMAND "org.junit.runner.JUnitCore" "org.mozilla.jss.tests.ChainSortingTest" +@@ -180,11 +152,6 @@ macro(jss_tests) + COMMAND "org.mozilla.jss.tests.SSLClientAuth" "${RESULTS_NSSDB_OUTPUT_DIR}" "${PASSWORD_FILE}" "${JSS_TEST_PORT_CLIENTAUTH}" "50" + DEPENDS "List_CA_certs" + ) +- jss_test_exec( +- NAME "TestBufferPRFD" +- COMMAND "${BIN_OUTPUT_DIR}/TestBufferPRFD" "${RESULTS_NSSDB_OUTPUT_DIR}" "${DB_PWD}" +- DEPENDS "List_CA_certs" "generate_c_TestBufferPRFD" +- ) + jss_test_java( + NAME "Key_Generation" + COMMAND "org.mozilla.jss.tests.TestKeyGen" "${RESULTS_NSSDB_OUTPUT_DIR}" "${PASSWORD_FILE}" +-- +2.21.0 + diff --git a/SPECS/jss.spec b/SPECS/jss.spec new file mode 100644 index 0000000..8b0964b --- /dev/null +++ b/SPECS/jss.spec @@ -0,0 +1,189 @@ +################################################################################ +Name: jss +################################################################################ + +Summary: Java Security Services (JSS) +URL: http://www.dogtagpki.org/wiki/JSS +License: MPLv1.1 or GPLv2+ or LGPLv2+ + +Version: 4.6.0 +Release: 2%{?_timestamp}%{?_commit_id}%{?dist} +# global _phase -a1 + +# To generate the source tarball: +# $ git clone https://github.com/dogtagpki/jss.git +# $ cd jss +# $ git tag v4.5. +# $ git push origin v4.5. +# Then go to https://github.com/dogtagpki/jss/releases and download the source +# tarball. +Source: https://github.com/dogtagpki/%{name}/archive/v%{version}%{?_phase}/%{name}-%{version}%{?_phase}.tar.gz + +# To create a patch for all changes since a version tag: +# $ git format-patch \ +# --stdout \ +# \ +# > jss-VERSION-RELEASE.patch +Patch: jss-disable-buffer-based-tests.patch + +################################################################################ +# Build Dependencies +################################################################################ + +# autosetup +BuildRequires: git +BuildRequires: make +BuildRequires: cmake + +BuildRequires: gcc-c++ +BuildRequires: nspr-devel >= 4.13.1 +BuildRequires: nss-devel >= 3.30 +BuildRequires: nss-tools >= 3.30 +BuildRequires: java-devel +BuildRequires: jpackage-utils +BuildRequires: slf4j +BuildRequires: glassfish-jaxb-api +%if 0%{?rhel} && 0%{?rhel} <= 7 +# no slf4j-jdk14 +%else +BuildRequires: slf4j-jdk14 +%endif +BuildRequires: apache-commons-lang +BuildRequires: apache-commons-codec + +BuildRequires: junit + +Requires: nss >= 3.30 +Requires: java-headless +Requires: jpackage-utils +Requires: slf4j +Requires: glassfish-jaxb-api +%if 0%{?rhel} && 0%{?rhel} <= 7 +# no slf4j-jdk14 +%else +Requires: slf4j-jdk14 +%endif +Requires: apache-commons-lang +Requires: apache-commons-codec + +Conflicts: ldapjdk < 4.20 +Conflicts: idm-console-framework < 1.2 +Conflicts: tomcatjss < 7.3.4 +Conflicts: pki-base < 10.6.5 + +%description +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 javadoc +################################################################################ + +Summary: Java Security Services (JSS) Javadocs +Group: Documentation +Requires: jss = %{version}-%{release} + +%description javadoc +This package contains the API documentation for JSS. + +################################################################################ +%prep + +%autosetup -n %{name}-%{version}%{?_phase} -p 1 -S git + +################################################################################ +%build + +%set_build_flags + +[ -z "$JAVA_HOME" ] && export JAVA_HOME=%{_jvmdir}/java + +# Enable compiler optimizations +export BUILD_OPT=1 + +# Generate symbolic info for debuggers +CFLAGS="-g $RPM_OPT_FLAGS" +export CFLAGS + +# The Makefile is not thread-safe +rm -rf build && mkdir -p build && cd build +%cmake \ + -DJAVA_HOME=%{java_home} \ + -DJAVA_LIB_INSTALL_DIR=%{_jnidir} \ + .. + +%{__make} all +%{__make} javadoc || true +ctest --output-on-failure + +################################################################################ +%install + +# There is no install target so we'll do it by hand + +# jars +install -d -m 0755 $RPM_BUILD_ROOT%{_jnidir} +install -m 644 build/jss4.jar ${RPM_BUILD_ROOT}%{_jnidir}/jss4.jar + +# We have to use the name libjss4.so because this is dynamically +# loaded by the jar file. +install -d -m 0755 $RPM_BUILD_ROOT%{_libdir}/jss +install -m 0755 build/libjss4.so ${RPM_BUILD_ROOT}%{_libdir}/jss/ +pushd ${RPM_BUILD_ROOT}%{_libdir}/jss + ln -fs %{_jnidir}/jss4.jar jss4.jar +popd + +# javadoc +install -d -m 0755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +cp -rp build/docs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +cp -p jss.html $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +cp -p *.txt $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} + +# No ldconfig is required since this library is loaded by Java itself. +################################################################################ +%files + +%defattr(-,root,root,-) +%doc jss.html MPL-1.1.txt gpl.txt lgpl.txt +%{_libdir}/* +%{_jnidir}/* + +################################################################################ +%files javadoc + +%defattr(-,root,root,-) +%{_javadocdir}/%{name}-%{version}/ + +################################################################################ +%changelog +* Wed Jun 12 2019 Dogtag PKI Team 4.6.0-2 +- Minor updates to release + +* Wed Jun 12 2019 Dogtag PKI Team 4.6.0-1 +- Rebased to JSS 4.6.0 + +* Thu Apr 25 2019 Dogtag PKI Team 4.5.3-1 +- Rebased to JSS 4.5.3 + +* Fri Aug 10 2018 Dogtag PKI Team 4.5.0-1 +- Rebased to JSS 4.5.0 + +* Tue Aug 07 2018 Dogtag PKI Team 4.5.0-0.6 +- Rebased to JSS 4.5.0-b1 + +* Tue Aug 07 2018 Dogtag PKI Team 4.5.0-0.5 +- Red Hat Bugzilla #1612063 - Do not override system crypto policy (support TLS 1.3) + +* Fri Jul 20 2018 Dogtag PKI Team 4.5.0-0.4 +- Rebased to JSS 4.5.0-a4 +- Red Hat Bugzilla #1604462 - jss: FTBFS in Fedora rawhide + +* Thu Jul 05 2018 Dogtag PKI Team 4.5.0-0.3 +- Rebased to JSS 4.5.0-a3 + +* Fri Jun 22 2018 Dogtag PKI Team 4.5.0-0.2 +- Rebased to JSS 4.5.0-a2 + +* Fri Jun 15 2018 Dogtag PKI Team 4.5.0-0.1 +- Rebased to JSS 4.5.0-a1