%global version_suffix 201704051617-r Name: eclipse-jgit Version: 4.7.0 Release: %mkrel 3 Group: Development/Java Summary: Eclipse JGit License: BSD URL: http://www.eclipse.org/egit/ Source0: http://git.eclipse.org/c/jgit/jgit.git/snapshot/jgit-%{version}.%{version_suffix}.tar.xz Patch0: fix_jgit_sh.patch # Patch for latest versions of args4j Patch1: eclipse-jgit-413163.patch # Change how feature deps are specified, to avoid embedding versions Patch2: jgit-feature-deps.patch # Have to patch for latest vesions of jetty - disabled after move from 9.4 -> 9.4.1 Patch3: eclipse-jgit-jetty-9.4.0.patch BuildArch: noarch BuildRequires: eclipse-filesystem BuildRequires: maven-local BuildRequires: maven-antrun-plugin BuildRequires: maven-plugin-build-helper BuildRequires: maven-shade-plugin BuildRequires: tycho BuildRequires: args4j BuildRequires: apache-commons-compress BuildRequires: xz-java >= 1.1-2 BuildRequires: javaewah BuildRequires: slf4j BuildRequires: jgit BuildRequires: google-gson Requires: eclipse-filesystem Requires: jgit = %{version}-%{release} %description A pure Java implementation of the Git version control system. %package -n jgit-javadoc Summary: API documentation for %{name} %description -n jgit-javadoc %{summary}. %package -n jgit Summary: Java-based command line Git interface Requires: xz-java >= 1.1-2 %description -n jgit Command line Git tool built entirely in Java. %prep %setup -n jgit-%{version}.%{version_suffix} -q %patch0 %patch1 -p1 %patch2 %patch3 -b .sav # Disable multithreaded build rm .mvn/maven.config # Javaewah change sed -i -e "s/javaewah/com.googlecode.javaewah.JavaEWAH/g" org.eclipse.jgit.packaging/org.eclipse.jgit{,.pgm}.feature/feature.xml sed -i -e 's/1.1.6,2.0.0/0.8.0,1.0.0/g' org.eclipse.jgit/META-INF/MANIFEST.MF org.eclipse.jgit.test/META-INF/MANIFEST.MF sed -i -e 's/WORD_IN_BITS/wordinbits/' org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/BitmapIndexImpl.java # Jetty change sed -i -e '/jetty/s/9\.4\.0/9.5.0/' $(find -name MANIFEST.MF) # Don't try to get deps from local *maven* repo, use tycho resolved ones %pom_remove_dep com.googlecode.javaewah:JavaEWAH for p in $(find org.eclipse.jgit.packaging -name pom.xml) ; do grep -q dependencies $p && %pom_xpath_remove "pom:dependencies" $p done # Disable "errorprone" compiler %pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:executions" pom.xml %pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:dependencies" pom.xml # Don't need target platform or repository modules with xmvn %pom_disable_module org.eclipse.jgit.target org.eclipse.jgit.packaging %pom_disable_module org.eclipse.jgit.repository org.eclipse.jgit.packaging %pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin/pom:configuration/pom:target" org.eclipse.jgit.packaging/pom.xml # Don't build source features %pom_disable_module org.eclipse.jgit.source.feature org.eclipse.jgit.packaging %pom_disable_module org.eclipse.jgit.pgm.source.feature org.eclipse.jgit.packaging # Use Equinox OSGi instead of Felix %pom_change_dep -r org.osgi:org.osgi.core org.eclipse.osgi:org.eclipse.osgi # Remove unnecessary jacoco and javadoc usage %pom_remove_plugin org.jacoco:jacoco-maven-plugin %pom_remove_plugin :maven-javadoc-plugin # Relax version restriction for args4j sed -i /org.kohsuke.args4j/s/2\\.1\\.0/3/ $(find -name MANIFEST.MF) # Don't attach shell script artifact %pom_remove_plugin org.codehaus.mojo:build-helper-maven-plugin org.eclipse.jgit.pgm # Does not build due to missing OSGi metadata in httpcomponents-client-cache sed -i -e '/client\.cache/d' org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF # Remove org.apache.log4j %pom_remove_dep log4j:log4j . org.eclipse.jgit.pgm # org.slf4j.api -> slf4j.api # org.slf4j.impl.log4j12 -> slf4j.simple sed -i 's/org\.slf4j\.api/slf4j\.api/ s/org\.slf4j\.impl\.log4j12/slf4j\.simple/' \ org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml %pom_change_dep org.slf4j:slf4j-log4j12 org.slf4j:slf4j-simple . org.eclipse.jgit.pgm pushd org.eclipse.jgit.packaging %mvn_package "::pom::" __noinstall popd %build # Due to a current limitation of Tycho it is not possible to mix pom-first and # manifest-first builds in the same reactor build hence two separate invocations # First invocation installs jgit so the second invocation will succeed %mvn_build -f --post install:install \ -- -Dmaven.repo.local=$(pwd)/org.eclipse.jgit.packaging/.m2 # Second invocation builds the eclipse features pushd org.eclipse.jgit.packaging %mvn_build -j -f -- -Dfedora.p2.repos=$(pwd)/.m2 popd %install # The macro does not allow us to change the "namespace" value, but here we want to # set it to something other than the SRPM name, so explode the macro xmvn-install -R .xmvn-reactor -n jgit -d %{buildroot} install -dm755 %{buildroot}%{_javadocdir}/jgit cp -pr .xmvn/apidocs/* %{buildroot}%{_javadocdir}/jgit echo '%{_javadocdir}/jgit' >>.mfiles-javadoc pushd org.eclipse.jgit.packaging %mvn_install popd # Binary install -dm 755 %{buildroot}%{_bindir} install -m 755 org.eclipse.jgit.pgm/jgit.sh %{buildroot}%{_bindir}/jgit %files -f org.eclipse.jgit.packaging/.mfiles %doc LICENSE README.md %files -n jgit -f .mfiles %{_bindir}/jgit %dir %{_javadir}/jgit %dir %{_mavenpomdir}/jgit %doc LICENSE README.md %files -n jgit-javadoc -f .mfiles-javadoc %doc LICENSE README.md %changelog * Wed May 17 2017 neoclust <neoclust> 4.7.0-3.mga6 + Revision: 1102508 - New version 4.7.0 * Wed Oct 05 2016 daviddavid <daviddavid> 4.5.0-1.mga6 + Revision: 1058855 - Update to upstream 4.5.0 release * Thu Aug 11 2016 daviddavid <daviddavid> 4.4.1-1.mga6 + Revision: 1045540 - Upgrade to 4.4.1 (sync with fc24) * Sun Jul 03 2016 daviddavid <daviddavid> 4.4.0-2.mga6 + Revision: 1038548 - Fix IllegalStateException when starting git daemon from the command line * Sun Jul 03 2016 daviddavid <daviddavid> 4.4.0-1.mga6 + Revision: 1038402 - Update to latest release - Add missing build-requires * Wed May 04 2016 daviddavid <daviddavid> 4.3.0-2.mga6 + Revision: 1009390 - Avoid embedding versions of external deps in features. This avoids the need to rebuild when a dependency changes version. * Fri Apr 29 2016 daviddavid <daviddavid> 4.3.0-1.mga6 + Revision: 1007740 - Upgrade to 4.3.0 - make sure patch2 is applied + neoclust <neoclust> - Second rebuild of the java stack - Second rebuild of the java stack * Sun Feb 21 2016 neoclust <neoclust> 4.2.0-3.mga6 + Revision: 975785 - First rebuild of the java stack - sync package eclipse-jgit with fedora + umeabot <umeabot> - Mageia 6 Mass Rebuild * Wed Dec 31 2014 pterjan <pterjan> 3.5.2-2.mga5 + Revision: 807613 - Clean rebuild - Sync with Fedora 21 (update to 3.5.2) - Restore + sander85 <sander85> - Depends on broken java stack + umeabot <umeabot> - Second Mageia 5 Mass Rebuild - Mageia 5 Mass Rebuild * Thu Dec 19 2013 luigiwalser <luigiwalser> 3.1.0-3.mga4 + Revision: 559006 - rebuild against eclipse-4.3.1-7.mga4 * Tue Oct 22 2013 umeabot <umeabot> 3.1.0-2.mga4 + Revision: 542181 - Mageia 4 Mass Rebuild * Mon Oct 14 2013 dmorgan <dmorgan> 3.1.0-1.mga4 + Revision: 497051 - New version - New version * Sat Jan 19 2013 dmorgan <dmorgan> 2.2.0-1.mga3 + Revision: 389581 - New version * Fri Jan 11 2013 umeabot <umeabot> 2.1.0-5.mga3 + Revision: 349434 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Thu Dec 06 2012 dmorgan <dmorgan> 2.1.0-4.mga3 + Revision: 327351 - Rebuild against new eclipse - Rebuild against new eclipse * Wed Dec 05 2012 dmorgan <dmorgan> 2.1.0-2.mga3 + Revision: 327059 - Rebuild to check correctness of eclipse setup * Wed Dec 05 2012 dmorgan <dmorgan> 2.1.0-1.mga3 + Revision: 326990 - New version - New version * Mon May 09 2011 dmorgan <dmorgan> 0.12.1-1.mga1 + Revision: 96792 - imported package eclipse-jgit * Tue May 03 2011 Chris Aniszczyk <zx@redhat.com> 0.12.1-1 - Update to upstream release 0.12.1. * Tue Feb 22 2011 Chris Aniszczyk <zx@redhat.com> 0.11.3-1 - Update to upstream release 0.11.3. * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Dec 22 2010 Chris Aniszczyk <zx@redhat.com> 0.10.1-1 - Update to upstream release 0.10.1. * Thu Oct 7 2010 Chris Aniszczyk <zx@redhat.com> 0.9.3-1 - Update to upstream release 0.9.3. * Wed Sep 15 2010 Severin Gehwolf <sgehwolf@redhat.com> 0.9.1-1 - Update to upstream release 0.9.1. * Thu Aug 26 2010 Severin Gehwolf <sgehwolf at, redhat.com> 0.9.0-0.1.20100825git - Make release tag more readable (separate "0.1" and pre-release tag by "."). * Wed Aug 25 2010 Severin Gehwolf <sgehwolf at, redhat.com> 0.9.0-0.120100825git - Pre-release version of JGit 0.9.0 * Fri Jun 25 2010 Severin Gehwolf <sgehwolf at, redhat.com> 0.8.4-2 - Increase release number to make tagging work. * Wed Jun 23 2010 Severin Gehwolf <sgehwolf at, redhat.com> 0.8.4-1 - Rebase to 0.8.4 release. * Mon Apr 12 2010 Jeff Johnston <jjohnstn@redhat.com> 0.7.1-1 - Rebase to 0.7.1 release. * Tue Feb 9 2010 Alexander Kurtakov <akurtako@redhat.com> 0.6.0-0.1.git20100208 - New git snapshot. * Thu Nov 5 2009 Alexander Kurtakov <akurtako@redhat.com> 0.6.0-0.1.git20091029 - Correct release. * Thu Oct 29 2009 Alexander Kurtakov <akurtako@redhat.com> 0.6.0-0.git20091029.1 - Initial package