Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release-src > by-pkgid > a892910a7a533912cb6eb79fdde96220 > files > 12

maven2-2.2.1-93.mga5.src.rpm

%global bootstrap 0
%global __jar_repack 0

%global main_pkg maven

Name:	    maven2
Version:	2.2.1
Release:	%mkrel 93
Summary:	Java project management and project comprehension tool

Group:		Development/Java
License:	ASL 2.0 and MIT and BSD
URL:		http://maven.apache.org

# export https://svn.apache.org/repos/asf/maven/maven-2/tags/maven-%{version}/ apache-maven-%{version}
# tar czvf %{name}-%{version}.tar.gz apache-maven-%{version}
Source0:	%{name}-%{version}.tar.gz


# 1xx for non-upstream/created sources
Source100:    %{name}-%{version}-settings.xml
Source103:    %{name}-%{version}-depmap.xml

Patch0:     %{name}-antbuild.patch
Patch2:     %{name}-%{version}-update-tests.patch
Patch3:     %{name}-%{version}-enable-bootstrap-repo.patch
Patch4:     %{name}-%{version}-unshade.patch
Patch5:     %{name}-%{version}-default-resolver-pool-size.patch
Patch6:     %{name}-%{version}-strip-jackrabbit-dep.patch
Patch7:     %{name}-%{version}-classworlds.patch
Patch8:     %{name}-%{version}-migrate-to-plexus-containers-container-default.patch

BuildRequires: java-devel >= 1.6.0

%if %{bootstrap}
BuildRequires: ant
%else
BuildRequires: apache-resource-bundles
BuildRequires: objectweb-asm
BuildRequires: buildnumber-maven-plugin
BuildRequires: bsh
BuildRequires: jsch
BuildRequires: apache-commons-codec
BuildRequires: jakarta-commons-httpclient
BuildRequires: apache-commons-io
BuildRequires: apache-commons-lang
BuildRequires: apache-commons-logging
BuildRequires: apache-commons-cli
BuildRequires: apache-commons-collections
BuildRequires: apache-commons-parent
BuildRequires: maven-local
BuildRequires: maven-enforcer-plugin
BuildRequires: maven-shade-plugin
BuildRequires: maven-install-plugin
BuildRequires: modello-maven-plugin
BuildRequires: plexus-containers
BuildRequires: plexus-containers-container-default
%endif


BuildArch: noarch

%description
Apache Maven is a software project management and comprehension tool. Based on
the concept of a project object model (POM), Maven can manage a project's
build, reporting and documentation from a central piece of information.

%package -n maven-artifact
Group:          Development/Java
Summary:        Compatibility Maven artifact artifact
Requires:       jpackage-utils
Requires:       plexus-utils
Requires:       plexus-containers-container-default

%description -n maven-artifact
Maven artifact manager artifact

%package -n maven-artifact-manager
Group:          Development/Java
Summary:        Compatibility Maven artifact manager artifact
Requires:       jpackage-utils
Requires:       plexus-classworlds
Requires:       plexus-utils
Requires:       plexus-containers-container-default
Requires:       maven-artifact = %{version}-%{release}
Requires:       maven-wagon

%description -n maven-artifact-manager
Maven artifact manager artifact

%package -n maven-error-diagnostics
Group:          Development/Java
Summary:        Compatibility Maven error diagnostics artifact
Requires:       jpackage-utils
Requires:       plexus-containers-container-default

%description -n maven-error-diagnostics
Maven error diagnostics artifact

%package -n maven-model
Group:          Development/Java
Summary:        Compatibility Maven model artifact
Requires:       jpackage-utils
Requires:       plexus-utils

%description -n maven-model
Maven model artifact

%package -n maven-monitor
Group:          Development/Java
Summary:        Compatibility Maven monitor artifact
Requires:       jpackage-utils

%description -n maven-monitor
Maven monitor artifact

%package -n maven-plugin-registry
Group:          Development/Java
Summary:        Compatibility Maven plugin registry artifact
Requires:       jpackage-utils
Requires:       plexus-utils
Requires:       plexus-containers-container-default

%description -n maven-plugin-registry
Maven plugin registry artifact

%package -n maven-profile
Group:          Development/Java
Summary:        Compatibility Maven profile artifact
Requires:       jpackage-utils
Requires:       maven-model = %{version}-%{release}
Requires:       plexus-utils
Requires:       plexus-interpolation
Requires:       plexus-containers-container-default

%description -n maven-profile
Maven profile artifact

%package -n maven-project
Group:          Development/Java
Summary:        Compatibility Maven project artifact
Requires:       jpackage-utils
Requires:       maven-artifact-manager = %{version}-%{release}
Requires:       maven-profile = %{version}-%{release}
Requires:       maven-plugin-registry = %{version}-%{release}
Requires:       maven-model = %{version}-%{release}
Requires:       maven-settings = %{version}-%{release}
Requires:       plexus-interpolation
Requires:       plexus-utils
Requires:       plexus-containers-container-default

%description -n maven-project
Maven project artifact

%package -n maven-settings
Group:          Development/Java
Summary:        Compatibility Maven settings artifact
Requires:       jpackage-utils
Requires:       maven-model = %{version}-%{release}
Requires:       plexus-interpolation
Requires:       plexus-utils
Requires:       plexus-containers-container-default

%description -n maven-settings
Maven settings artifact

%package -n maven-toolchain
Group:          Development/Java
Summary:        Compatibility Maven toolchain artifact
Requires:       jpackage-utils

%description -n maven-toolchain
Maven toolchain artifact

%package -n maven-plugin-descriptor
Group:          Development/Java
Summary:        Maven Plugin Description Model
Requires:       jpackage-utils
Requires:       maven
Requires:       plexus-classworlds
Requires:       plexus-containers-container-default

%description -n maven-plugin-descriptor
Maven toolchain artifact

%package javadoc
Summary:        Javadoc for %{name}
Group:          Documentation
Requires:       jpackage-utils

%description javadoc
Javadoc for %{name}.


%prep
%setup -q -n apache-maven-2.2.1

%patch0 -b .antbuild
%patch2 -b .update-tests

%if ! %{bootstrap}
%patch4 -b .unshade
%endif

%if %{bootstrap}
%patch3 -b .enable-bootstrap-repo
%endif

# set cache location
export M2_REPO=`pwd`/.m2
mkdir $M2_REPO

# if bootstrapping, extract the dependencies
%if %{bootstrap}
(cd $M2_REPO

  tar xzf %{SOURCE1}

  # maven-remote-resources-plugin (m-r-r-p) is used side-by-side with
  # plexus-velocity (p-v) 1.1.3 upstream.. we collapse to a single p-v version
  # of 1.1.7. 1.1.7 however has a component descriptor that conflicts
  # with the one in m-r-r-p. We therefore need to remove the descriptor
  # from m-r-r-p first
  zip -d repository/org/apache/maven/plugins/maven-remote-resources-plugin/1.0-beta-2/maven-remote-resources-plugin-1.0-beta-2.jar \
         META-INF/plexus/components.xml

  # resource bundle 1.3 is needed during build, but not when done via
  # upstream, for some reason
  mkdir -p repository/org/apache/apache-jar-resource-bundle/1.3
  ln -s ../1.4/apache-jar-resource-bundle-1.4.jar \
        repository/org/apache/apache-jar-resource-bundle/1.3/apache-jar-resource-bundle-1.3.jar
  ln -s ../1.4/apache-jar-resource-bundle-1.4.jar.sha1 \
        repository/org/apache/apache-jar-resource-bundle/1.3/apache-jar-resource-bundle-1.3.jar.sha1
)
%endif

# disable parallel artifact resolution
%patch5 -p1 -b .parallel-artifacts-resolution

# remove unneeded jackrabbit dependency
%patch6 -p1 -b .strip-jackrabbit-dep

%patch7 -p1 -b .classworlds

%patch8 -p1 -b .plexus-container

for nobuild in apache-maven maven-artifact-test \
               maven-compat maven-core maven-plugin-api \
               maven-plugin-parameter-documenter maven-reporting \
               maven-script;do
    %pom_disable_module $nobuild
done

# Don't depend on backport-util-concurrent
%pom_remove_dep :backport-util-concurrent
%pom_remove_dep :backport-util-concurrent maven-artifact-manager
sed -i s/edu.emory.mathcs.backport.// `find -name DefaultArtifactResolver.java`

# Tests are skipped, so remove dependencies with scope 'test'.
for pom in $(grep -l ">test<" $(find -name pom.xml | grep -v /test/)); do
    %pom_xpath_remove "pom:dependency[pom:scope[text()='test']]" $pom
done

%build
export M2_REPO=`pwd`/.m2
export M2_HOME=`pwd`/installation/apache-maven-%{version}

# copy settings to where ant reads from
mkdir -p $M2_HOME/conf
cp %{SOURCE100} $M2_HOME/conf/settings.xml

# replace locations in the copied settings file
sed -i -e s:__M2_LOCALREPO_PLACEHOLDER__:"file\://$M2_REPO/cache":g $M2_HOME/conf/settings.xml
sed -i -e s:__M2_REMOTEREPO_PLACEHOLDER__:"file\://$M2_REPO/repository":g $M2_HOME/conf/settings.xml

# replace settings file location before patching
sed -i -s s:__M2_SETTINGS_FILE__:$M2_HOME/conf/settings.xml:g build.xml

%if %{bootstrap}
ant -Dmaven.repo.local=$M2_REPO/cache
%else
unset M2_HOME
export M2_HOME
mvn-rpmbuild -Dmaven.test.skip=true -P all-models \
             -Dmaven.local.depmap.file=%{SOURCE103} \
             install javadoc:aggregate
%endif

%install

# maven2 directory in /usr/share/java
install -dm 755 $RPM_BUILD_ROOT%{_javadir}/%{main_pkg}
install -dm 755 $RPM_BUILD_ROOT%{_mavenpomdir}


# parts of maven2 now go into separate subpackages
for subdir in maven-artifact-manager maven-error-diagnostics \
              maven-monitor maven-plugin-registry \
              maven-profile maven-project maven-toolchain maven-plugin-descriptor ;do
     pushd $subdir
     install -m 644 target/$subdir-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{main_pkg}/$subdir.jar
     install -m 644 pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.%{main_pkg}-$subdir.pom
     %add_maven_depmap JPP.%{main_pkg}-$subdir.pom %{main_pkg}/$subdir.jar -f $subdir
     popd
done

# these parts are compatibility versions which are available in
# maven-3.x as well. We default to maven-3, but if someone asks for
# 2.x we provide few compat versions
for subdir in \
  maven-artifact \
  maven-model \
  maven-settings;
do
     pushd $subdir
     install -m 644 target/$subdir-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{main_pkg}/$subdir.jar
     install -m 644 pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.%{main_pkg}-$subdir.pom
     %add_maven_depmap JPP.%{main_pkg}-$subdir.pom %{main_pkg}/$subdir.jar -f $subdir -v "2.0.2,2.0.6,2.0.7,2.0.8"
     popd
done

# javadoc
install -d -m 755 %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}



%files -n maven-artifact
%{_datadir}/maven-metadata/%{name}-maven-artifact.xml
%{_javadir}/%{main_pkg}/maven-artifact-2.*.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-artifact-2.*.pom

%files -n maven-artifact-manager
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-artifact-manager.xml
%{_javadir}/%{main_pkg}/maven-artifact-manager.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-artifact-manager.pom

%files -n maven-error-diagnostics
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-error-diagnostics.xml
%{_javadir}/%{main_pkg}/maven-error-diagnostics.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-error-diagnostics.pom

%files -n maven-model
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-model.xml
%{_javadir}/%{main_pkg}/maven-model-*.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-model-*.pom

%files -n maven-monitor
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-monitor.xml
%{_javadir}/%{main_pkg}/maven-monitor.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-monitor.pom

%files -n maven-plugin-registry
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-plugin-registry.xml
%{_javadir}/%{main_pkg}/maven-plugin-registry.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-plugin-registry.pom

%files -n maven-profile
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-profile.xml
%{_javadir}/%{main_pkg}/maven-profile.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-profile.pom

%files -n maven-project
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-project.xml
%{_javadir}/%{main_pkg}/maven-project.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-project.pom

%files -n maven-settings
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-settings.xml
%{_javadir}/%{main_pkg}/maven-settings-*.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-settings-*.pom

%files -n maven-toolchain
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-toolchain.xml
%{_javadir}/%{main_pkg}/maven-toolchain.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-toolchain.pom

%files -n maven-plugin-descriptor
%doc LICENSE.txt NOTICE.txt
%{_datadir}/maven-metadata/%{name}-maven-plugin-descriptor.xml
%{_javadir}/%{main_pkg}/maven-plugin-descriptor.jar
%{_mavenpomdir}/JPP.%{main_pkg}-maven-plugin-descriptor.pom

%files javadoc
%doc LICENSE.txt NOTICE.txt
%{_javadocdir}/*




%changelog
* Sun Jan 11 2015 pterjan <pterjan> 2.2.1-93.mga5
+ Revision: 809943
- Add missing BuildRequires
- Update file list

* Wed Oct 15 2014 umeabot <umeabot> 2.2.1-92.mga5
+ Revision: 741133
- Second Mageia 5 Mass Rebuild
- Mageia 5 Mass Rebuild

* Mon Oct 21 2013 umeabot <umeabot> 2.2.1-90.mga4
+ Revision: 537658
- Mageia 4 Mass Rebuild

* Fri Sep 27 2013 dmorgan <dmorgan> 2.2.1-89.mga4
+ Revision: 487434
- Build with xmvn

* Fri Sep 20 2013 dmorgan <dmorgan> 2.2.1-88.mga4
+ Revision: 482550
- Build with xmvn
- Rebuild to generate mvn(*) versioned provides

* Sun Mar 24 2013 dmorgan <dmorgan> 2.2.1-85.mga3
+ Revision: 405132
- Revive artifact subpackage

* Sun Mar 24 2013 dmorgan <dmorgan> 2.2.1-84.mga3
+ Revision: 405117
- Provides maven-artifact

* Sat Mar 23 2013 dmorgan <dmorgan> 2.2.1-83.mga3
+ Revision: 404571
- Rebuild to fix signatures

  + umeabot <umeabot>
    - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Mon Sep 10 2012 dmorgan <dmorgan> 2.2.1-81.mga3
+ Revision: 291578
- Completely remove main package since it was just confusing

* Fri Jun 22 2012 gil <gil> 2.2.1-80.mga3
+ Revision: 262573
- add plugin-descriptor subpackage

* Fri Jan 06 2012 dmorgan <dmorgan> 2.2.1-79.mga2
+ Revision: 192069
- Rebuild after maven conflict added
- Fix file list
- Provide mvn2 script instead of mvn (maven provides that now) (Fedora)

* Fri Dec 09 2011 dmorgan <dmorgan> 2.2.1-75.mga2
+ Revision: 179640
- Add maven-model as Requires

* Fri Dec 09 2011 dmorgan <dmorgan> 2.2.1-74.mga2
+ Revision: 179511
- Add maven-error-diagnostics subpackage
- Order subpackages according to alphabet

* Tue Jul 19 2011 dmorgan <dmorgan> 2.2.1-73.mga2
+ Revision: 126614
- Add conflicts to ease upgrade

* Tue Jul 19 2011 dmorgan <dmorgan> 2.2.1-72.mga2
+ Revision: 126436
- Sync with fedora

* Tue Jul 19 2011 dmorgan <dmorgan> 2.2.1-71.mga2
+ Revision: 126122
- Fix jpp script to limit maven2.jpp.mode scope

* Thu Apr 28 2011 dmorgan <dmorgan> 2.2.1-70.mga1
+ Revision: 92623
- Rebuild after bootstrapping
- imported package maven2


* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.1-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Wed Jan 19 2011 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-20
- Add maven-artifact-test to installation

* Tue Jan 18 2011 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-19
- Print plugin collector debug output only when maven2.jpp.debug mode is on

* Wed Dec 22 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-18
- Add xml-commons-apis to lib directory
- fixes NoClassDefFoundError org/w3c/dom/ElementTraversal

* Fri Dec 10 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-17
- Add conditional BRs to enable ff merge between f14 and f15
- Remove jackrabbit dependency from pom files

* Fri Dec 10 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-16
- Fix installation of pom files for artifact jars

* Mon Nov 22 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-15
- Add apache-commons-parent to BR/R
- Rename BRs from jakarta-commons to apache-commons

* Thu Nov 11 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-14
- Remove old depmaps from -depmap.xml file
- Fix argument quoting for mvn scripts (Resolves rhbz#647945)

* Mon Sep 20 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-13
- Create dangling symlinks during install (Resolves rhbz#613866)

* Fri Sep 17 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-12
- Update JPackageRepositoryLayout to handle "signature" packaging

* Mon Sep 13 2010 Yong Yang <yyang@redhat.com> 2.2.1-11
- Add -P all-models to generate maven model v3

* Wed Sep 1 2010 Alexander Kurtakov <akurtako@redhat.com> 2.2.1-10
- Remove buildnumber-maven-plugins deps now that is fixed.
- Use new package names in BR/R.
- Use global instead of define.

* Fri Aug 27 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-9
- Remove failing tests after maven-surefire 2.6 update

* Thu Aug 26 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-8
- Remove incorrect testcase failing with ant 1.8
- Cleanup whitespace

* Tue Jun 29 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-7
- Updated previous patch to only modify behaviour in JPP mode

* Mon Jun 28 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.2.1-6
- Disable parallel artifact resolution

* Wed Jun 23 2010 Yong Yang <yyang@redhat.com> 2.2.1-5
- Add Requires: maven-enforcer-plugin

* Fri Jun 18 2010 Deepak Bhole <dbhole@redhat.com> 2.2.1-4
- Final non-bootstrap build against non-bootstrap maven

* Fri Jun 18 2010 Deepak Bhole <dbhole@redhat.com> 2.2.1-3
- Added buildnumber plugin requirements
- Rebuild in non-bootstrap

* Thu Jun 17 2010 Deepak Bhole <dbhole@redhat.com> - 0:2.2.1-2
- Added support for dumping mapping info (in debug mode)
- Add a custom depmap
- Added empty-dep
- Added proper requirements
- Fixed classworlds jar name used at runtime
- Install individual components
- Install poms and mappings
- Remove non maven items from shaded uber jar
- Create dependency links in $M2_HOME/lib at install time

* Thu Nov 26 2009 Deepak Bhole <dbhole@redhat.com> - 0:2.2.1-1
- Initial bootstrap build