diff --git a/.apache-ivy.metadata b/.apache-ivy.metadata new file mode 100644 index 0000000..1803230 --- /dev/null +++ b/.apache-ivy.metadata @@ -0,0 +1 @@ +1efa73e73b5fc14ef003ff2fcb182f039db33ce2 apache-ivy-2.4.0-src.tar.gz diff --git a/.gitignore b/.gitignore index 6d3158e..14e1ac3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ SOURCES/apache-ivy-2.3.0-src.tar.gz +/apache-ivy-2.4.0-src.tar.gz diff --git a/apache-ivy.spec b/apache-ivy.spec index 1f0a36d..d976bf9 100644 --- a/apache-ivy.spec +++ b/apache-ivy.spec @@ -1,27 +1,49 @@ +%bcond_without ssh +%bcond_without vfs +%bcond_without bouncycastle + Name: apache-ivy -Version: 2.3.0 -Release: 4%{?dist} +Version: 2.4.0 +Release: 14%{?dist} Summary: Java-based dependency manager -Group: Development/Tools License: ASL 2.0 -URL: http://ant.apache.org/ivy/ +URL: http://ant.apache.org/ivy Source0: http://www.apache.org/dist/ant/ivy/%{version}/%{name}-%{version}-src.tar.gz BuildArch: noarch +# Non-upstreamable. Add /etc/ivy/ivysettings.xml at the end list of +# settings files Ivy tries to load. This file will be used only as +# last resort, when no other setting files exist. +Patch0: %{name}-global-settings.patch +# sent upstream: IVY-1521 +Patch1: port-to-bc-1.52.patch + Provides: ivy = %{version}-%{release} BuildRequires: ant +BuildRequires: ant-contrib +BuildRequires: ant-testutil +%if %{with vfs} +BuildRequires: apache-commons-vfs +%endif +BuildRequires: apache-commons-lang +%if %{with bouncycastle} +BuildRequires: bouncycastle +BuildRequires: bouncycastle-pg +%endif BuildRequires: jakarta-commons-httpclient BuildRequires: jsch BuildRequires: jakarta-oro -BuildRequires: java-devel >= 1.5 -BuildRequires: jpackage-utils -Requires: jpackage-utils -Requires: jakarta-oro -Requires: jsch -Requires: ant -Requires: jakarta-commons-httpclient +BuildRequires: apache-commons-parent +BuildRequires: sonatype-oss-parent +BuildRequires: apache-parent +BuildRequires: ivy-local >= 4 +%if %{with ssh} +BuildRequires: jsch-agent-proxy-connector-factory +BuildRequires: jsch-agent-proxy-core +BuildRequires: jsch-agent-proxy-jsch +%endif %description Apache Ivy is a tool for managing (recording, tracking, resolving and @@ -33,77 +55,175 @@ reporting and publication. %package javadoc Summary: API Documentation for ivy -Group: Development/Tools -Requires: %{name} = %{version}-%{release} -Requires: jpackage-utils %description javadoc JavaDoc documentation for %{name} %prep %setup -q +%patch0 +%patch1 -p1 + +# Don't hardcode sysconfdir path +sed -i 's:/etc/ivy/:%{_sysconfdir}/ivy/:' src/java/org/apache/ivy/ant/IvyAntSettings.java + +%if %{without ssh} +%pom_remove_dep :jsch +%pom_remove_dep :jsch.agentproxy +%pom_remove_dep :jsch.agentproxy.connector-factory +%pom_remove_dep :jsch.agentproxy.jsch +rm -r src/java/org/apache/ivy/plugins/repository/{ssh,sftp} +rm src/java/org/apache/ivy/plugins/resolver/*{Ssh,SFTP}*.java +%endif + +%if %{without bouncycastle} +%pom_remove_dep org.bouncycastle +rm src/java/org/apache/ivy/plugins/signer/bouncycastle/OpenPGPSignatureGenerator.java +%endif + +%mvn_alias : jayasoft:ivy +%mvn_file : %{name}/ivy ivy # Fix messed-up encodings -for F in RELEASE_NOTES README LICENSE NOTICE CHANGES.txt +for F in README LICENSE NOTICE do sed 's/\r//' $F |iconv -f iso8859-1 -t utf8 >$F.utf8 touch -r $F $F.utf8 mv $F.utf8 $F done -rm -fr src/java/org/apache/ivy/plugins/signer/bouncycastle +# ant-trax has been obsoleted, use main ant package +sed -i s/ant-trax/ant/ ivy.xml + +# Fedora bouncycastle packages provide -jdk16 artifacts only +sed -i /bouncycastle/s/jdk14/jdk16/ ivy.xml + +# Port from commons-vfs 1.x to 2.x +%if %{with vfs} +sed -i "s/commons.vfs/&2/" src/java/org/apache/ivy/plugins/repository/vfs/* +%else +sed -i /commons-vfs/d ivy.xml +rm -rf src/java/org/apache/ivy/plugins/repository/vfs +rm -rf src/java/org/apache/ivy/plugins/resolver/VfsResolver.java +%endif # Remove prebuilt documentation rm -rf doc build/doc -# How to properly disable a plugin? -# we disable vfs plugin since commons-vfs is not available -rm -rf src/java/org/apache/ivy/plugins/repository/vfs \ - src/java/org/apache/ivy/plugins/resolver/VfsResolver.java -sed '/vfs.*=.*org.apache.ivy.plugins.resolver.VfsResolver/d' -i \ - src/java/org/apache/ivy/core/settings/typedef.properties +# Publish artifacts through XMvn +sed -i /ivy:publish/s/local/xmvn/ build.xml %build -# Craft class path -mkdir -p lib -build-jar-repository lib ant jakarta-commons-httpclient jakarta-oro jsch - -# Build -ant /localivy /offline -Dtarget.ivy.bundle.version=%{version} -Dtarget.ivy.bundle.version.qualifier= -Dtarget.ivy.version=%{version} jar javadoc +%ant -Divy.mode=local -Dtarget.ivy.bundle.version=%{version} -Dtarget.ivy.bundle.version.qualifier= -Dtarget.ivy.version=%{version} jar javadoc publish-local %install -# Code -install -d $RPM_BUILD_ROOT%{_javadir} -install -p -m644 build/artifact/jars/ivy.jar $RPM_BUILD_ROOT%{_javadir}/ivy.jar - -# API Documentation -install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name} -cp -rp build/doc/reports/api/. $RPM_BUILD_ROOT%{_javadocdir}/%{name} +%mvn_install -J build/doc/reports/api mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ant.d -echo "ivy" > $RPM_BUILD_ROOT%{_sysconfdir}/ant.d/%{name} +echo "apache-ivy/ivy" > $RPM_BUILD_ROOT%{_sysconfdir}/ant.d/%{name} -%files -%{_javadir}/* +%files -f .mfiles %{_sysconfdir}/ant.d/%{name} -%doc RELEASE_NOTES CHANGES.txt LICENSE NOTICE README +%doc README +%license LICENSE NOTICE -%files javadoc -%{_javadocdir}/* -%doc LICENSE NOTICE +%files javadoc -f .mfiles-javadoc +%license LICENSE NOTICE %changelog -* Thu Jan 02 2014 Michal Srb - 2.3.0-4 +* Tue Jul 17 2018 Mikolaj Izdebski - 2.4.0-14 +- Allow building without vfs support + +* Thu Jul 12 2018 Fedora Release Engineering - 2.4.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Mar 28 2018 Michael Simacek - 2.4.0-12 +- Remove now unneeded patch + +* Fri Mar 16 2018 Michael Simacek - 2.4.0-11 +- Fix build against ant 1.10.2 + +* Wed Feb 07 2018 Fedora Release Engineering - 2.4.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 2.4.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Mar 1 2017 Mikolaj Izdebski - 2.4.0-8 +- Don't hardcode sysconfdir path + +* Tue Feb 14 2017 Michael Simacek - 2.4.0-7 +- Add conditional for bouncycastle + +* Mon Feb 06 2017 Michael Simacek - 2.4.0-6 +- Add conditional for ssh + +* Wed Feb 03 2016 Fedora Release Engineering - 2.4.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 2.4.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon May 04 2015 Michal Srb - 2.4.0-3 +- Update comment + +* Mon May 04 2015 Michal Srb - 2.4.0-2 +- Port to bouncycastle 1.52 + +* Wed Apr 1 2015 Mikolaj Izdebski - 2.4.0-1 +- Update to upstream version 2.4.0 + +* Fri Sep 19 2014 Mikolaj Izdebski - 2.3.0-17 +- Add compat symlink for ivy.jar + +* Mon Aug 11 2014 Mikolaj Izdebski - 2.3.0-16 +- Add alias for jayasoft:ivy + +* Thu Jun 26 2014 Michal Srb - 2.3.0-15 +- Drop workaround for broken apache-ivy + +* Thu Jun 26 2014 Michal Srb - 2.3.0-14 +- Fix /etc/ant.d/apache-ivy (Resolves: rhbz#1113275) + +* Mon Jun 23 2014 Michal Srb - 2.3.0-13 +- Add BR on missing parent POMs + +* Mon Jun 09 2014 Michal Srb - 2.3.0-12 +- Add missing BR: apache-commons-lang + +* Sat Jun 07 2014 Fedora Release Engineering - 2.3.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu May 29 2014 Mikolaj Izdebski - 2.3.0-10 +- Use features of XMvn 2.0.0 + +* Thu Jan 16 2014 Mikolaj Izdebski - 2.3.0-9 +- BuildRequire ivy-local >= 3.5.0-2 + +* Thu Jan 16 2014 Mikolaj Izdebski - 2.3.0-8 +- Build with ivy-local +- Add patch for global settings + +* Thu Jan 02 2014 Michal Srb - 2.3.0-7 - Remove prebuilt documentation in %%prep - Install NOTICE file with javadoc subpackage -- Resolves: rhbz#854311 -* Fri Dec 27 2013 Daniel Mach - 2.3.0-3 -- Mass rebuild 2013-12-27 +* Thu Jan 02 2014 Michal Srb - 2.3.0-6 +- Restore PGP signing ability +- Remove unneeded R -* Fri Jun 28 2013 Mikolaj Izdebski - 2.3.0-2 -- Rebuild to regenerate API documentation -- Resolves: CVE-2013-1571 +* Thu Dec 12 2013 Mikolaj Izdebski - 2.3.0-5 +- Enable VFS resolver + +* Wed Dec 4 2013 Mikolaj Izdebski - 2.3.0-4 +- Install POM files, resolves: rhbz#1032258 +- Remove explicit requires; auto-requires are in effect now + +* Fri Nov 1 2013 Mikolaj Izdebski - 2.3.0-3 +- Add Maven depmap + +* Sat Aug 03 2013 Fedora Release Engineering - 2.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Fri Mar 1 2013 Alexander Kurtakov 2.3.0-1 - Update to latest upstream. diff --git a/dead.package.c9s b/dead.package.c9s deleted file mode 100644 index 89e7067..0000000 --- a/dead.package.c9s +++ /dev/null @@ -1 +0,0 @@ -apache-ivy package is retired for CS-621 \ No newline at end of file diff --git a/sources b/sources index f8502dd..379a8f6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA1 (apache-ivy-2.3.0-src.tar.gz) = 244213bd0d0f344e17678ccbc72b341db6c5b9a3 +SHA512 (apache-ivy-2.4.0-src.tar.gz) = 813fbab505f4552725cf0503eff9ba6b767a9fba009cea9705fedc04c7beb3819c524837b4790246be0bf7bef3216064e027e13ae2513adca4f1bf8632698a33