%global base_name collections %global short_name commons-%{base_name} Name: apache-%{short_name} Version: 3.2.1 %define subrel 1 Release: %mkrel 24 Summary: Provides new interfaces, implementations and utilities for Java Collections License: ASL 2.0 Group: Development/Java URL: http://commons.apache.org/%{base_name}/ Source0: http://www.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz Source1: commons-collections-testframework.pom Patch0: java8-compat.patch Patch1: jakarta-%{short_name}-javadoc-nonet.patch Patch4: commons-collections-3.2-build_xml.patch Patch5: apache-commons-collections-3.2.1-CVE-2015-7501.patch BuildArch: noarch BuildRequires: java-devel BuildRequires: jpackage-utils BuildRequires: maven-local BuildRequires: ant BuildRequires: apache-commons-parent BuildRequires: dos2unix Requires: java-headless Requires: jpackage-utils Provides: jakarta-%{short_name} = %{version}-%{release} Obsoletes: jakarta-%{short_name} < %{version}-%{release} Obsoletes: %{name}-tomcat5 < %{version}-%{release} %description The introduction of the Collections API by Sun in JDK 1.2 has been a boon to quick and effective Java programming. Ready access to powerful data structures has accelerated development by reducing the need for custom container classes around each core object. Most Java2 APIs are significantly easier to use because of the Collections API. However, there are certain holes left unfilled by Sun's implementations, and the Jakarta-Commons Collections Component strives to fulfill them. Among the features of this package are: - special-purpose implementations of Lists and Maps for fast access - adapter classes from Java1-style containers (arrays, enumerations) to Java2-style collections. - methods to test or create typical set-theory properties of collections such as union, intersection, and closure. %package testframework Summary: Testframework for %{name} Group: Development/Java Requires: %{name} = %{version}-%{release} Provides: jakarta-%{short_name}-testframework = %{version}-%{release} Obsoletes: jakarta-%{short_name}-testframework < %{version}-%{release} %description testframework %{summary}. %package javadoc Summary: Javadoc for %{name} Group: Documentation Provides: jakarta-%{short_name}-javadoc = %{version}-%{release} Obsoletes: jakarta-%{short_name}-javadoc < %{version}-%{release} %description javadoc %{summary}. %package testframework-javadoc Summary: Javadoc for %{name}-testframework Group: Documentation Provides: jakarta-%{short_name}-testframework-javadoc = %{version}-%{release} Obsoletes: jakarta-%{short_name}-testframework-javadoc < %{version}-%{release} %description testframework-javadoc %{summary}. %prep %setup -q -n %{short_name}-%{version}-src # remove all binary libs find . -name "*.jar" -exec rm -f {} \; find . -name "*.class" -exec rm -f {} \; find . -name "*.java" |xargs dos2unix %patch0 -p1 %patch1 -p1 %patch4 -b .sav %patch5 -p1 # Fix file eof %{__sed} -i 's/\r//' LICENSE.txt %{__sed} -i 's/\r//' PROPOSAL.html %{__sed} -i 's/\r//' RELEASE-NOTES.html %{__sed} -i 's/\r//' README.txt %{__sed} -i 's/\r//' NOTICE.txt # Substitute version into testframework pom cp -p %{SOURCE1} pom-testframework.xml sed -i 's/@VERSION@/%{version}/' pom-testframework.xml %build %mvn_build ant tf.javadoc %install # jars install -Dm 644 target/%{short_name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar install -Dm 644 target/%{short_name}-testframework-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-testframework.jar (cd $RPM_BUILD_ROOT%{_javadir} && for jar in *; do ln -sf ${jar} `echo $jar| sed "s|apache-||g"`; done) # poms mkdir -p %{buildroot}%{_datadir}/maven-poms/ install -Dpm 644 pom.xml %{buildroot}%{_datadir}/maven-poms/%{short_name}.pom install -Dpm 644 pom-testframework.xml %{buildroot}%{_datadir}/maven-poms/%{short_name}-testframework.pom # fragments %add_maven_depmap %{short_name}.pom %{short_name}.jar -a "org.apache.commons:%{short_name}" %add_maven_depmap %{short_name}-testframework.pom %{short_name}-testframework.jar -f "testframework" -a "org.apache.commons:%{short_name}-testframework" # javadoc install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} rm -rf target/site/apidocs # testframework-javadoc install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-testframework-%{version} cp -pr build/docs/testframework/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-testframework-%{version} ln -s %{name}-testframework-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}-testframework %files -f .mfiles %doc PROPOSAL.html README.txt LICENSE.txt RELEASE-NOTES.html NOTICE.txt %{_javadir}/%{name}.jar %{_javadir}/%{short_name}.jar %files testframework -f .mfiles-testframework %{_javadir}/%{name}-testframework.jar %{_javadir}/%{short_name}-testframework.jar %files javadoc %doc LICENSE.txt NOTICE.txt %{_javadocdir}/%{name}-%{version} %{_javadocdir}/%{name} %files testframework-javadoc %doc LICENSE.txt NOTICE.txt %{_javadocdir}/%{name}-testframework-%{version} %{_javadocdir}/%{name}-testframework %changelog * Tue Jan 12 2016 luigiwalser <luigiwalser> 3.2.1-24.1.mga5 + Revision: 922143 - add patch from redhat to fix CVE-2015-7501 * Sat Dec 27 2014 pterjan <pterjan> 3.2.1-24.mga5 + Revision: 806411 - Clean rebuild - Sync with Fedora + dmorgan <dmorgan> - Restore from Obsolete - Fix Requires into java-headless + sander85 <sander85> - Depends on broken java stack + umeabot <umeabot> - Second Mageia 5 Mass Rebuild - Mageia 5 Mass Rebuild * Sat Jan 11 2014 dmorgan <dmorgan> 3.2.1-17.mga4 + Revision: 566209 - Disable tests * Tue Oct 22 2013 umeabot <umeabot> 3.2.1-16.mga4 + Revision: 545586 - Mageia 4 Mass Rebuild * Wed Oct 16 2013 dmorgan <dmorgan> 3.2.1-15.mga4 + Revision: 501428 - Build with xmvn * Fri Jan 11 2013 umeabot <umeabot> 3.2.1-14.mga3 + Revision: 345654 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Sun Jul 08 2012 dmorgan <dmorgan> 3.2.1-13.mga3 + Revision: 268867 - saxon dependency removed - not needed - minor spec file changes according to the latest guidelines * Wed Jul 20 2011 dmorgan <dmorgan> 3.2.1-12.mga2 + Revision: 127185 - Added *-testframework depmap entries. * Wed Apr 27 2011 dmorgan <dmorgan> 3.2.1-11.mga1 + Revision: 92225 - Rebuild after bootstrapping - imported package apache-commons-collections