maven2/maven2.spec
2020-03-10 15:43:13 +08:00

154 lines
5.1 KiB
RPMSpec

Name: maven2
Version: 2.2.1
Release: 60
License: ASL 2.0
Summary: Software project management and comprehension tool
URL: http://maven.apache.org
BuildArch: noarch
Source0: https://archive.apache.org/dist/maven/maven-2/2.2.1/source/apache-maven-2.2.1-src.tar.gz
Patch0001: %{name}-%{version}-migrate-to-plexus-containers-container-default.patch
BuildRequires: maven-local mvn(org.apache.maven:maven-parent:pom:) mvn(org.apache.maven.plugins:maven-enforcer-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-shade-plugin) mvn(org.apache.maven.wagon:wagon-provider-api)
BuildRequires: mvn(org.codehaus.modello:modello-maven-plugin) mvn(org.codehaus.plexus:plexus-container-default)
BuildRequires: mvn(org.codehaus.plexus:plexus-interpolation) mvn(org.codehaus.plexus:plexus-utils)
%description
Apache Maven is a Java project management and project comprehension tool.
Based on the concept of a project object model (POM),according to a central piece of
information, Maven can manage a project's build, reporting and documentation.
%package -n maven-artifact
Summary: Maven artifact artifact
%description -n maven-artifact
Compatibility Maven artifact manager artifact
%package -n maven-model
Summary: Maven model artifact
%description -n maven-model
Compatibility Maven model artifact
%package -n maven-artifact-manager
Summary: Maven artifact manager artifact
%description -n maven-artifact-manager
Compatibility Maven artifact manager artifact
%package -n maven-monitor
Summary: Maven monitor artifact
%description -n maven-monitor
Compatibility Maven monitor artifact
%package -n maven-toolchain
Summary: Maven toolchain artifact
%description -n maven-toolchain
Compatibility Maven toolchain artifact
%package -n maven-settings
Summary: Maven settings artifact
%description -n maven-settings
Compatibility Maven settings artifact
%package -n maven-plugin-descriptor
Summary: Compatibility Maven Plugin Description Model
%description -n maven-plugin-descriptor
Compatibility Maven plugin descriptor artifact
%package -n maven-plugin-registry
Summary: Maven plugin registry artifact
%description -n maven-plugin-registry
Compatibility Maven plugin registry artifact
%package -n maven-project
Summary: Maven project artifact
%description -n maven-project
Compatibility Maven project artifact
%package -n maven-profile
Summary: Maven profile artifact
%description -n maven-profile
Compatibility Compatibility Maven profile artifact
%package help
Summary: Help documentation for %{name}
Provides: %{name}-javadoc = %{version}-%{release}
Obsoletes: %{name}-javadoc < %{version}-%{release}
%description help
Man pages and other related help documents for %{name}.
%prep
%autosetup -n apache-maven-%{version} -p1
for nobuild in apache-maven maven-artifact-test maven-compat maven-core maven-plugin-api \
maven-plugin-parameter-documenter maven-reporting \
maven-repository-metadata maven-script maven-error-diagnostics; do
%pom_disable_module $nobuild
done
%mvn_package :maven __noinstall
%mvn_file ":{*}" maven/@1
%mvn_compat_version ":maven-{artifact,model,settings}" 2.0.2 2.0.6 2.0.7 2.0.8 2.2.1
%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`
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
%mvn_build -f -s -- -P all-models
%install
%mvn_install
%files -n maven-artifact -f .mfiles-maven-artifact
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-model -f .mfiles-maven-model
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-monitor -f .mfiles-maven-monitor
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-artifact-manager -f .mfiles-maven-artifact-manager
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-plugin-registry -f .mfiles-maven-plugin-registry
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-settings -f .mfiles-maven-settings
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-toolchain -f .mfiles-maven-toolchain
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-profile -f .mfiles-maven-profile
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-project -f .mfiles-maven-project
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files -n maven-plugin-descriptor -f .mfiles-maven-plugin-descriptor
%license apache-maven/LICENSE.txt apache-maven/NOTICE.txt
%files help -f .mfiles-javadoc
%changelog
* Fri Dec 6 2019 wangzhishun <wangzhishun1@huawei.com> - 2.2.1-60
- Package init