Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-updates-src > by-pkgid > 8251f4cd9fa705447978e332743ef88d > files > 2

apache-commons-collections-3.2.1-24.1.mga5.src.rpm

%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