diff --git a/build.xml b/build.xml new file mode 100644 index 0000000..0f92cc0 --- /dev/null +++ b/build.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/maven-build.properties b/maven-build.properties new file mode 100644 index 0000000..bb8217c --- /dev/null +++ b/maven-build.properties @@ -0,0 +1,34 @@ +#Generated by Maven Ant Plugin - DO NOT EDIT THIS FILE! +#Wed Oct 14 10:51:05 CEST 2020 +maven.settings.offline=true +voms-api-java.version=3.3.2 +maven.build.finalName=voms-clients-3.3.2 +commons-cli.version=1.2 +plugin.license.version=1.9.0 +maven.build.resourceDir.0=src/main/resources +maven.build.testOutputDir=${maven.build.dir}/test-classes +maven.build.testResourceDir.0=src/test/resources +maven.reporting.outputDirectory=${maven.build.dir}/site +plugin.compiler.version=3.1 +commons-io.version=2.0.1 +plugin.javadoc.version=2.9.1 +project.build.sourceEncoding=UTF-8 +maven.build.srcDir.0=src/main/java +plugin.assembly.version=2.4.1 +junit.version=4.10 +project.build.directory=${maven.build.dir} +maven.test.reports=${maven.build.dir}/test-reports +maven.build.dir=target +plugin.jar.version=2.5 +project.build.outputDirectory=${maven.build.outputDir} +plugin.nexus-staging.version=1.6.3 +plugin.source.version=2.2.1 +plugin.release.version=2.2.2 +project.reporting.outputEncoding=UTF-8 +voms-clients.libs= +maven.build.testDir.0=src/test/java +maven.settings.interactiveMode=true +plugin.gpg.version=1.5 +maven.repo.local=${user.home}/.m2/repository +plugin.deploy.version=2.8.2 +maven.build.outputDir=${maven.build.dir}/classes diff --git a/maven-build.xml b/maven-build.xml new file mode 100644 index 0000000..8b2f0d2 --- /dev/null +++ b/maven-build.xml @@ -0,0 +1,291 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + =================================== WARNING =================================== + JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed. + =============================================================================== + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sources b/sources index 3bbcccc..7629928 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (voms-clients-java-3.3.7.tar.gz) = 7ed80d50ec844a93fa6f566523fb64dc0b37b7163501bd30029a6ed7bf1d01103fc753daf438405b645c1e8b501846297cc705893fced23e270f31f7b89e7eda +SHA512 (voms-clients-java-3.3.2.tar.gz) = 2228e1ee45aac029eaacc8ed859d42ec6668b1d885ab1a7dd2372dfa3fc28814be0edcbea8996f46152fcfed68390dbed8f1526e3d77935de18766748711d4c2 diff --git a/voms-clients-java.spec b/voms-clients-java.spec index 144f451..285ed83 100644 --- a/voms-clients-java.spec +++ b/voms-clients-java.spec @@ -1,41 +1,45 @@ Name: voms-clients-java -Version: 3.3.7 -Release: 3%{?dist} +Version: 3.3.2 +Release: 1%{?dist} Summary: Virtual Organization Membership Service Java clients -License: Apache-2.0 -URL: https://github.com/italiangrid/voms-clients -Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz - +License: ASL 2.0 +URL: https://wiki.italiangrid.it/VOMS +Source0: https://github.com/italiangrid/voms-clients/archive/v%{version}/%{name}-%{version}.tar.gz +# These are build instructions for ant generated from the maven +# build instructions using the maven ant plugin. +# These are used for building on EPEL 6 since there is no maven +# available there. +Source1: build.xml +Source2: maven-build.xml +Source3: maven-build.properties BuildArch: noarch -ExclusiveArch: %{java_arches} noarch +# There is no jakarta-commons-io for ppc64 in EPEL6 +ExcludeArch: ppc64 -%if %{?fedora}%{!?fedora:0} >= 43 -BuildRequires: maven-local-openjdk25 -%else -BuildRequires: maven-local -%endif -BuildRequires: mvn(org.italiangrid:voms-api-java) >= 3.3.7 -BuildRequires: mvn(commons-cli:commons-cli) -BuildRequires: mvn(commons-io:commons-io) -BuildRequires: mvn(junit:junit) -BuildRequires: asciidoctor -Requires: mvn(org.italiangrid:voms-api-java) >= 3.3.7 -%if %{?rhel}%{!?rhel:0} == 9 -Requires: (java-headless or java-1.8.0-headless or java-11-headless or java-17-headless or java-21-headless or java-25-headless) -%else -Requires: (java-headless or java-21-headless or java-25-headless) -%endif -Suggests: java-headless -Requires: javapackages-tools +BuildRequires: java-1.8.0-openjdk-devel +BuildRequires: jpackage-utils +BuildRequires: ant +BuildRequires: ant-junit +BuildRequires: jakarta-commons-cli +BuildRequires: jakarta-commons-io +BuildRequires: junit4 +BuildRequires: voms-api-java >= 3.3.2 +Requires: java >= 1:1.8 +Requires: jpackage-utils +Requires: jakarta-commons-cli +Requires: jakarta-commons-io +Requires: voms-api-java >= 3.3.2 Requires(post): %{_sbindir}/update-alternatives -Requires(preun): %{_sbindir}/update-alternatives +Requires(postun): %{_sbindir}/update-alternatives # Older versions of voms-clients did not have alternatives Conflicts: voms-clients < 2.0.12 Provides: voms-clients = %{version}-%{release} +Provides: voms-clients3 = %{version}-%{release} +Obsoletes: voms-clients3 < 3.1 %description The Virtual Organization Membership Service (VOMS) is an attribute authority @@ -50,54 +54,53 @@ voms-proxy-init, voms-proxy-destroy and voms-proxy-info. %prep %setup -q -n voms-clients-%{version} - -# Remove maven-javadoc-plugin configuration -# We are not building the javadoc for this package -%pom_remove_plugin org.apache.maven.plugins:maven-javadoc-plugin - -# Do not create source jars -%pom_remove_plugin org.apache.maven.plugins:maven-source-plugin - -# Don't do assembly -%pom_remove_plugin :maven-assembly-plugin - -# The asciidoctor plugin is not available in Fedora -# Run asciidoctor explicitly in the build section instead -%pom_remove_plugin org.asciidoctor:asciidoctor-maven-plugin +cp -p %{SOURCE1} . +cp -p %{SOURCE2} . +cp -p %{SOURCE3} . %build -%mvn_build -j - -pushd man -for x in *.adoc ; do asciidoctor -b manpage $x ; done -popd +export CLASSPATH=$(build-classpath voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io junit4) +%ant -Dbuild.sysclasspath=last package %install -%mvn_install +mkdir -p %{buildroot}%{_javadir} +install -m 644 target/voms-clients-%{version}.jar \ + %{buildroot}%{_javadir}/voms-clients.jar + +mkdir -p %{buildroot}%{_mavenpomdir} +install -p -m 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-voms-clients.pom +%add_to_maven_depmap org.italiangrid voms-clients %{version} JPP voms-clients mkdir -p %{buildroot}%{_bindir} cat > %{buildroot}%{_bindir}/voms-proxy-init3 << EOF #!/bin/sh -VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx32m"} -java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcutil bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInit "\$@" +VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx16m"} +java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInit "\$@" EOF chmod 755 %{buildroot}%{_bindir}/voms-proxy-init3 cat > %{buildroot}%{_bindir}/voms-proxy-info3 << EOF #!/bin/sh -VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx32m"} -java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcutil bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInfo "\$@" +VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx16m"} +java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInfo "\$@" EOF chmod 755 %{buildroot}%{_bindir}/voms-proxy-info3 cat > %{buildroot}%{_bindir}/voms-proxy-destroy3 << EOF #!/bin/sh -VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx32m"} -java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcutil bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyDestroy "\$@" +VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx16m"} +java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyDestroy "\$@" EOF chmod 755 %{buildroot}%{_bindir}/voms-proxy-destroy3 +touch %{buildroot}%{_bindir}/voms-proxy-init +chmod 755 %{buildroot}%{_bindir}/voms-proxy-init +touch %{buildroot}%{_bindir}/voms-proxy-info +chmod 755 %{buildroot}%{_bindir}/voms-proxy-info +touch %{buildroot}%{_bindir}/voms-proxy-destroy +chmod 755 %{buildroot}%{_bindir}/voms-proxy-destroy + mkdir -p %{buildroot}%{_mandir}/man1 install -p -m 644 man/voms-proxy-init.1 \ %{buildroot}%{_mandir}/man1/voms-proxy-init3.1 @@ -106,19 +109,16 @@ install -p -m 644 man/voms-proxy-info.1 \ install -p -m 644 man/voms-proxy-destroy.1 \ %{buildroot}%{_mandir}/man1/voms-proxy-destroy3.1 -mkdir -p %{buildroot}%{_sysconfdir}/alternatives -for b in voms-proxy-init voms-proxy-info voms-proxy-destroy; do - ln -s %{_bindir}/${b}3 %{buildroot}%{_sysconfdir}/alternatives/${b} - ln -s %{_sysconfdir}/alternatives/${b} %{buildroot}%{_bindir}/${b} - ln -s %{_mandir}/man1/${b}3.1.gz %{buildroot}%{_sysconfdir}/alternatives/${b}.1.gz - ln -s %{_sysconfdir}/alternatives/${b}.1.gz %{buildroot}%{_mandir}/man1/${b}.1.gz -done +touch %{buildroot}%{_mandir}/man1/voms-proxy-init.1 +touch %{buildroot}%{_mandir}/man1/voms-proxy-info.1 +touch %{buildroot}%{_mandir}/man1/voms-proxy-destroy.1 mkdir -p %{buildroot}%{_mandir}/man5 install -p -m 644 man/vomsdir.5 %{buildroot}%{_mandir}/man5/vomsdir.5 install -p -m 644 man/vomses.5 %{buildroot}%{_mandir}/man5/vomses.5 %post +%update_maven_depmap %{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-init \ voms-proxy-init %{_bindir}/voms-proxy-init3 90 \ --slave %{_mandir}/man1/voms-proxy-init.1.gz voms-proxy-init-man \ @@ -132,7 +132,8 @@ install -p -m 644 man/vomses.5 %{buildroot}%{_mandir}/man5/vomses.5 --slave %{_mandir}/man1/voms-proxy-destroy.1.gz voms-proxy-destroy-man \ %{_mandir}/man1/voms-proxy-destroy3.1.gz -%preun +%postun +%update_maven_depmap if [ $1 -eq 0 ] ; then %{_sbindir}/update-alternatives --remove voms-proxy-init \ %{_bindir}/voms-proxy-init3 @@ -142,147 +143,67 @@ if [ $1 -eq 0 ] ; then %{_bindir}/voms-proxy-destroy3 fi -%files -f .mfiles +%triggerpostun -- voms-clients3 +# Uninstalling the UMD voms-clients3 package will remove the alternatives +# for voms-clients-java - put them back in this triggerpostun script +%{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-init \ + voms-proxy-init %{_bindir}/voms-proxy-init3 90 \ + --slave %{_mandir}/man1/voms-proxy-init.1.gz voms-proxy-init-man \ + %{_mandir}/man1/voms-proxy-init3.1.gz +%{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-info \ + voms-proxy-info %{_bindir}/voms-proxy-info3 90 \ + --slave %{_mandir}/man1/voms-proxy-info.1.gz voms-proxy-info-man \ + %{_mandir}/man1/voms-proxy-info3.1.gz +%{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-destroy \ + voms-proxy-destroy %{_bindir}/voms-proxy-destroy3 90 \ + --slave %{_mandir}/man1/voms-proxy-destroy.1.gz voms-proxy-destroy-man \ + %{_mandir}/man1/voms-proxy-destroy3.1.gz + +%files +%{_javadir}/voms-clients.jar +%{_mavenpomdir}/JPP-voms-clients.pom +%config(noreplace) %{_mavendepmapfragdir}/%{name} %{_bindir}/voms-proxy-destroy3 %{_bindir}/voms-proxy-info3 %{_bindir}/voms-proxy-init3 %ghost %{_bindir}/voms-proxy-destroy %ghost %{_bindir}/voms-proxy-info %ghost %{_bindir}/voms-proxy-init -%ghost %{_sysconfdir}/alternatives/voms-proxy-destroy -%ghost %{_sysconfdir}/alternatives/voms-proxy-info -%ghost %{_sysconfdir}/alternatives/voms-proxy-init %{_mandir}/man1/voms-proxy-destroy3.1* %{_mandir}/man1/voms-proxy-info3.1* %{_mandir}/man1/voms-proxy-init3.1* %ghost %{_mandir}/man1/voms-proxy-destroy.1* %ghost %{_mandir}/man1/voms-proxy-info.1* %ghost %{_mandir}/man1/voms-proxy-init.1* -%ghost %{_sysconfdir}/alternatives/voms-proxy-destroy.1* -%ghost %{_sysconfdir}/alternatives/voms-proxy-info.1* -%ghost %{_sysconfdir}/alternatives/voms-proxy-init.1* %{_mandir}/man5/vomsdir.5* %{_mandir}/man5/vomses.5* -%doc README.md +%doc AUTHORS README.md %license LICENSE %changelog -* Fri Jul 17 2026 Fedora Release Engineering - 3.3.7-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild - -* Sat Jan 17 2026 Fedora Release Engineering - 3.3.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Sat Dec 20 2025 Mattias Ellert - 3.3.7-1 -- Update to version 3.3.7 -- Increase default max heap memory (following upstream) - -* Wed Aug 06 2025 Mattias Ellert - 3.3.6-1 -- Update to version 3.3.6 - -* Mon Jul 28 2025 jiri vanek - 3.3.5-5 -- Rebuilt for java-25-openjdk as preffered jdk - -* Fri Jul 25 2025 Fedora Release Engineering - 3.3.5-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Tue Jul 08 2025 Mattias Ellert - 3.3.5-3 -- Allow alternative java versions in EPEL 9 - -* Tue Apr 22 2025 Mattias Ellert - 3.3.5-2 -- Update URL tag - -* Sat Apr 19 2025 Mattias Ellert - 3.3.5-1 -- Update to version 3.3.5 - -* Sun Jan 19 2025 Fedora Release Engineering - 3.3.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Sat Aug 03 2024 Mattias Ellert - 3.3.3-1 -- Update to version 3.3.3 - -* Sat Jul 20 2024 Fedora Release Engineering - 3.3.2-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Fri May 24 2024 Mattias Ellert - 3.3.2-15 -- Update License tags (SPDX) -- Add additional ghost files to package (rpmlint) - -* Thu May 23 2024 Marian Koncek - 3.3.2-14 -- Add Requires on java-headless - -* Tue Feb 27 2024 Jiri Vanek - 3.3.2-13 -- Rebuilt for java-21-openjdk as system jdk - -* Sat Jan 27 2024 Fedora Release Engineering - 3.3.2-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sat Jul 22 2023 Fedora Release Engineering - 3.3.2-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sat Jan 21 2023 Fedora Release Engineering - 3.3.2-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Sat Jul 23 2022 Fedora Release Engineering - 3.3.2-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jul 08 2022 Jiri Vanek - 3.3.2-8 -- Rebuilt for Drop i686 JDKs - -* Sat Feb 05 2022 Jiri Vanek - 3.3.2-7 -- Rebuilt for java-17-openjdk as system jdk - -* Sat Jan 22 2022 Fedora Release Engineering - 3.3.2-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jan 14 2022 Mattias Ellert - 3.3.2-5 -- Add bcutil to classpath - -* Fri Jul 23 2021 Fedora Release Engineering - 3.3.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Mon May 17 2021 Mattias Ellert - 3.3.2-3 -- Add missing build requires mvn(junit:junit) - -* Wed Jan 27 2021 Fedora Release Engineering - 3.3.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Oct 13 2020 Mattias Ellert - 3.3.2-1 +* Wed Oct 14 2020 Mattias Ellert - 3.3.2-1 - Update to version 3.3.2 - Drop patches voms-clients-java-use-a-more-sensible-timeout.patch and voms-clients-java-change-default-proxy-cert-key-length-to-2048-bits.patch -* Wed Jul 29 2020 Fedora Release Engineering - 3.3.0-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sat Jul 11 2020 Jiri Vanek - 3.3.0-8 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Fri Jan 31 2020 Fedora Release Engineering - 3.3.0-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Tue Aug 20 2019 Mattias Ellert - 3.3.0-6 -- Remove maven-javadoc-plugin configuration - -* Sat Jul 27 2019 Fedora Release Engineering - 3.3.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sun Feb 03 2019 Fedora Release Engineering - 3.3.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - * Wed Oct 31 2018 Mattias Ellert - 3.3.0-3 - Change default proxy cert key length to 2048 bits - Use a more sensible timeout -* Sat Jul 14 2018 Fedora Release Engineering - 3.3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild +* Tue Apr 10 2018 Mattias Ellert - 3.3.0-2 +- Add trigger scriptlet to restore removed alternatives * Thu Feb 08 2018 Mattias Ellert - 3.3.0-1 +- Build against bouncycastle1.58 - Update to version 3.3.0 - Drop patches voms-clients-java-except.patch and -canl-2.5.patch +* Thu Jan 11 2018 Mattias Ellert - 3.0.7-6 +- Add Provides/Obsoletes voms-clients3 + * Fri Jan 05 2018 Mattias Ellert - 3.0.7-5 - Adapt to canl-java 2.5 +- Create EPEL 6 package using the maven ant plugin * Tue Aug 08 2017 Mattias Ellert - 3.0.7-4 - Don't do assembly