77909b7
Name:           guava20
77909b7
Version:        20.0
1a98ae8
Release:        6%{?dist}
77909b7
Summary:        Google Core Libraries for Java
77909b7
License:        ASL 2.0
77909b7
URL:            https://github.com/google/guava
77909b7
BuildArch:      noarch
77909b7
77909b7
Source0:        https://github.com/google/guava/archive/v%{version}.tar.gz
1a98ae8
Patch0:         0001-Avoid-presizing-arrays.patch
77909b7
77909b7
BuildRequires:  maven-local
77909b7
BuildRequires:  mvn(com.google.code.findbugs:jsr305)
77909b7
BuildRequires:  mvn(junit:junit)
77909b7
BuildRequires:  mvn(org.apache.felix:maven-bundle-plugin)
77909b7
BuildRequires:  mvn(org.codehaus.mojo:build-helper-maven-plugin)
77909b7
BuildRequires:  mvn(org.sonatype.oss:oss-parent:pom:)
77909b7
77909b7
%description
77909b7
Guava is a suite of core and expanded libraries that include
77909b7
utility classes, Google’s collections, io classes, and much
77909b7
much more.
77909b7
This project is a complete packaging of all the Guava libraries
77909b7
into a single jar.  Individual portions of Guava can be used
77909b7
by downloading the appropriate module and its dependencies.
77909b7
77909b7
%package javadoc
77909b7
Summary:        Javadoc for %{name}
77909b7
77909b7
%description javadoc
77909b7
API documentation for %{name}.
77909b7
77909b7
%package testlib
77909b7
Summary:        The guava-testlib artifact
77909b7
77909b7
%description testlib
77909b7
guava-testlib provides additional functionality for conveninent unit testing
77909b7
77909b7
%prep
77909b7
%setup -q -n guava-%{version}
77909b7
1a98ae8
%patch0 -p1
1a98ae8
77909b7
find . -name '*.jar' -delete
77909b7
77909b7
%pom_disable_module guava-gwt
77909b7
%pom_remove_plugin -r :animal-sniffer-maven-plugin 
77909b7
%pom_remove_plugin :maven-gpg-plugin
77909b7
%pom_remove_dep jdk:srczip guava
77909b7
%pom_remove_dep :caliper guava-tests
77909b7
%mvn_package :guava-parent guava
77909b7
%mvn_package :guava-tests __noinstall
77909b7
77909b7
# javadoc generation fails due to strict doclint in JDK 1.8.0_45
77909b7
%pom_remove_plugin -r :maven-javadoc-plugin
77909b7
77909b7
%pom_xpath_inject /pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration/pom:instructions "<_nouses>true</_nouses>" guava/pom.xml
77909b7
77909b7
%pom_remove_dep -r :animal-sniffer-annotations
77909b7
%pom_remove_dep -r :error_prone_annotations
77909b7
%pom_remove_dep -r :j2objc-annotations
77909b7
77909b7
annotations=$(
77909b7
    fgrep -hr -e com.google.j2objc.annotations \
77909b7
        -e com.google.errorprone.annotation -e org.codehaus.mojo.animal_sniffer \
77909b7
    | sort -u \
77909b7
    | sed 's/.*\.\([^.]*\);/\1/' \
77909b7
    | paste -sd\|
77909b7
)
77909b7
# guava started using quite a few annotation libraries for code quality, which
77909b7
# we don't have. This ugly regex is supposed to remove their usage from the code
77909b7
find -name '*.java' | xargs sed -ri \
77909b7
    "s/^import .*\.($annotations);//;s/@($annotations)"'\>\s*(\((("[^"]*")|([^)]*))\))?//'
77909b7
77909b7
%build
77909b7
%mvn_compat_version : 20.0 19.0 18.0 17.0 16.0.1 16.0 15.0 14.0.1 14.0 13.0.1 13.0 12.0.1 12.0 11.0.2 11.0.1 11.0 10.0.1 10.0
3ab44ff
%mvn_alias :guava com.google.collections:google-collections com.google.guava:guava-jdk5
77909b7
# Tests fail on Koji due to insufficient memory,
77909b7
# see https://bugzilla.redhat.com/show_bug.cgi?id=1332971
77909b7
%mvn_build -s -f
77909b7
77909b7
%install
77909b7
%mvn_install
77909b7
77909b7
%files -f .mfiles-guava
77909b7
%doc CONTRIBUTORS README*
77909b7
%license COPYING
77909b7
77909b7
%files javadoc -f .mfiles-javadoc
77909b7
%license COPYING
77909b7
77909b7
%files testlib -f .mfiles-guava-testlib
77909b7
77909b7
%changelog
1a98ae8
* Wed May 02 2018 Michael Simacek <msimacek@redhat.com> - 20.0-6
1a98ae8
- Backport fix for CVE-2018-10237
1a98ae8
1a8af02
* Wed Apr 11 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 20.0-5
1a8af02
- Remove BR on guava
1a8af02
d680acb
* Wed Apr 11 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 20.0-4
d680acb
- Rebuild
d680acb
3ab44ff
* Fri Feb 16 2018 Michael Simacek <msimacek@redhat.com> - 20.0-3
3ab44ff
- Re-add old alias for gradle
3ab44ff
9fe32a9
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 20.0-2
9fe32a9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
9fe32a9
77909b7
* Mon Feb 05 2018 Michael Simacek <msimacek@redhat.com> - 20.0-1
77909b7
- Change to compat package
77909b7
77909b7
* Mon Nov 06 2017 Michael Simacek <msimacek@redhat.com> - 20.0-1
77909b7
- Update to upstream version 20.0
77909b7
77909b7
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 18.0-11
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
77909b7
77909b7
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 18.0-10
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
77909b7
77909b7
* Mon Oct 10 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 18.0-9
77909b7
- Allow conditional builds without testlib
77909b7
77909b7
* Thu Jun 16 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 18.0-8
77909b7
- Cleanup package
77909b7
77909b7
* Tue May 10 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 18.0-7
77909b7
- Disable tests due to insufficient memory on Koji
77909b7
77909b7
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 18.0-6
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
77909b7
77909b7
* Wed Jun 22 2015 Noa Resare <noa@resare.com> - 18.0-5
77909b7
- enable module guava-testlib
77909b7
- enable tests in guava-testlib
77909b7
- backport fix to HashMap related test from 19.0-SNAPSHOT
77909b7
77909b7
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 18.0-4
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
77909b7
77909b7
* Thu May 14 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 18.0-3
77909b7
- Remove maven-javadoc-plugin execution
77909b7
77909b7
* Fri Feb  6 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 18.0-2
77909b7
- Update upstream website URL
77909b7
77909b7
* Wed Jan  7 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 18.0-1
77909b7
- Update to v. 18 (#1175401)
77909b7
- Use %license
77909b7
77909b7
* Wed Oct  8 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 17.0-2
77909b7
- Add alias for com.google.guava:guava-jdk5
77909b7
77909b7
* Fri Jun 20 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 17.0-1
77909b7
- Add patch for Java 8
77909b7
77909b7
* Tue Jun 17 2014 Roland Grunberg <rgrunber@redhat.com> - 15.0-4
77909b7
- Do not generate uses directive for exports.
77909b7
77909b7
* Fri Jun 13 2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> 17.0-1
77909b7
- Update to latest upstream version (#1109442).
77909b7
77909b7
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 15.0-3
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
77909b7
77909b7
* Tue Mar 04 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 15.0-2
77909b7
- Use Requires: java-headless rebuild (#1067528)
77909b7
77909b7
* Wed Jan  8 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 15.0-1
77909b7
- Update to upstream version 15.0
77909b7
77909b7
* Mon Aug 12 2013 gil cattaneo <puntogil@libero.it> 13.0-6
77909b7
- fix rhbz#992456
77909b7
- update to current packaging guidelines
77909b7
77909b7
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 13.0-5
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
77909b7
77909b7
* Fri Jun 28 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 13.0-4
77909b7
- Replace BR on ant-nodeps with ant
77909b7
77909b7
* Fri Jun 28 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 13.0-4
77909b7
- Rebuild to regenerate API documentation
77909b7
- Resolves: CVE-2013-1571
77909b7
77909b7
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 13.0-3
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
77909b7
77909b7
* Wed Feb 06 2013 Java SIG <java-devel@lists.fedoraproject.org> - 13.0-2
77909b7
- Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild
77909b7
- Replace maven BuildRequires with maven-local
77909b7
77909b7
* Tue Aug  7 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 13.0-1
77909b7
- Update to upstream version 13.0
77909b7
- Remove RPM bug workaround
77909b7
- Convert patches to pom macros
77909b7
77909b7
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 11.0.2-2
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
77909b7
77909b7
* Sat Apr 28 2012 gil cattaneo <puntogil@libero.it> 11.0.2-1
77909b7
- Update to 11.0.2
77909b7
77909b7
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 09-2
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
77909b7
77909b7
* Mon Sep 12 2011 Stanislav Ochotnicky <sochotnicky@redhat.com> - 09-1
77909b7
- Update to 09
77909b7
- Packaging fixes
77909b7
- Build with maven
77909b7
77909b7
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 05-5
77909b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
77909b7
77909b7
* Wed Jul 14 2010 Hui wang <huwang@redhat.com> - 05-4
77909b7
- Patch pom
77909b7
77909b7
* Fri Jun 18 2010 Hui Wang <huwang@redhat.com> - 05-3
77909b7
- Fixed jar name in install section
77909b7
- Removed spaces in description
77909b7
77909b7
* Thu Jun 17 2010 Hui Wang <huwang@redhat.com> - 05-2
77909b7
- Fixed summary
77909b7
- Fixed description
77909b7
- Fixed creating symlink insturctions
77909b7
- add depmap
77909b7
77909b7
* Thu Jun 10 2010 Hui Wang <huwang@redhat.com> - 05-1
77909b7
- Initial version of the package