[java-sig-commits] [maven2] Build with XMvn
Mikolaj Izdebski
mizdebsk at fedoraproject.org
Tue Sep 10 15:43:42 UTC 2013
commit dc10b045c813d2f0292900ce8addf05757878f73
Author: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Tue Sep 10 16:54:47 2013 +0200
Build with XMvn
maven2.spec | 116 +++++++++--------------------------------------------------
1 files changed, 17 insertions(+), 99 deletions(-)
---
diff --git a/maven2.spec b/maven2.spec
index 19ea010..5084c54 100644
--- a/maven2.spec
+++ b/maven2.spec
@@ -4,8 +4,6 @@ Name: maven2
Version: 2.2.1
Release: 47%{?dist}
Summary: Java project management and project comprehension tool
-
-Group: Development/Build Tools
License: ASL 2.0 and MIT and BSD
URL: http://maven.apache.org
@@ -51,127 +49,73 @@ 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/Libraries
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/Libraries
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/Libraries
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/Libraries
Summary: Compatibility Maven model artifact
-Requires: jpackage-utils
-Requires: plexus-utils
%description -n maven-model
Maven model artifact
%package -n maven-monitor
-Group: Development/Libraries
Summary: Compatibility Maven monitor artifact
-Requires: jpackage-utils
%description -n maven-monitor
Maven monitor artifact
%package -n maven-plugin-registry
-Group: Development/Libraries
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/Libraries
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/Libraries
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/Libraries
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/Libraries
Summary: Compatibility Maven toolchain artifact
-Requires: jpackage-utils
%description -n maven-toolchain
Maven toolchain artifact
%package -n maven-plugin-descriptor
-Group: Development/Libraries
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}.
@@ -197,10 +141,22 @@ Javadoc for %{name}.
for nobuild in apache-maven maven-artifact-test \
maven-compat maven-core maven-plugin-api \
maven-plugin-parameter-documenter maven-reporting \
- maven-script;do
+ maven-repository-metadata maven-script; do
%pom_disable_module $nobuild
done
+# Don't install parent POM
+%mvn_package :maven __noinstall
+
+# Install all artifacts in Maven 3 directory.
+%mvn_file ":{*}" %{main_pkg}/@1
+
+# 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
+%mvn_compat_version ":maven-{artifact,model,settings}" \
+ 2.0.2 2.0.6 2.0.7 2.0.8 2.2.1
+
# Don't depend on backport-util-concurrent
%pom_remove_dep :backport-util-concurrent
%pom_remove_dep :backport-util-concurrent maven-artifact-manager
@@ -212,48 +168,10 @@ for pom in $(grep -l ">test<" $(find -name pom.xml | grep -v /test/)); do
done
%build
-mvn-rpmbuild -Dmaven.test.skip=true -P all-models \
- install javadoc:aggregate
+%mvn_build -f -s -- -P all-models
%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
- popd
- %add_maven_depmap JPP.%{main_pkg}-$subdir.pom %{main_pkg}/$subdir.jar -f $subdir
-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
- popd
- %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"
- sed -i "s/\\($subdir\\)\\.\\(jar\\|pom\\)$/\\1-%{version}.\\2/" .mfiles-$subdir
-done
-
-# javadoc
-install -d -m 755 %{buildroot}%{_javadocdir}/%{name}
-cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
-
-
+%mvn_install
%files -n maven-artifact -f .mfiles-maven-artifact
%doc LICENSE.txt NOTICE.txt
@@ -288,9 +206,8 @@ cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
%files -n maven-plugin-descriptor -f .mfiles-maven-plugin-descriptor
%doc LICENSE.txt NOTICE.txt
-%files javadoc
+%files javadoc -f .mfiles-javadoc
%doc LICENSE.txt NOTICE.txt
-%{_javadocdir}/*
%changelog
@@ -300,6 +217,7 @@ cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
- Remove local depmap
- Use mfiles to simplify %%files sections
- Remove handling of custom settings.xml
+- Build with XMvn
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.2.1-46
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
More information about the java-sig-commits
mailing list