Merge branch split

This commit is contained in:
Mikolaj Izdebski 2013-04-30 15:58:19 +02:00
commit 5db02e9a5a

View file

@ -1,35 +1,114 @@
Name: aether
Version: 1.13.1
Release: 7%{?dist}
Release: 8%{?dist}
Summary: Sonatype library to resolve, install and deploy artifacts the Maven way
License: EPL or ASL 2.0
URL: https://docs.sonatype.org/display/AETHER/Home
# git clone https://github.com/sonatype/sonatype-aether.git
# git archive --prefix="aether-1.11/" --format=tar aether-1.11 | bzip2 > aether-1.11.tar.bz2
Source0: %{name}-%{version}.tar.bz2
BuildArch: noarch
BuildRequires: maven-local
BuildRequires: maven-surefire-provider-junit4
BuildRequires: plexus-containers-component-metadata >= 1.5.4-4
BuildRequires: forge-parent
BuildRequires: async-http-client >= 1.6.1
BuildRequires: mvn(com.ning:async-http-client)
BuildRequires: mvn(org.apache.maven.wagon:wagon-provider-api)
BuildRequires: mvn(org.codehaus.plexus:plexus-classworlds)
BuildRequires: mvn(org.codehaus.plexus:plexus-component-annotations)
BuildRequires: mvn(org.codehaus.plexus:plexus-utils)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.sonatype.forge:forge-parent)
BuildRequires: mvn(org.sonatype.sisu:sisu-inject-plexus)
# Require all subpackages for now, until all packages that use aether
# migrate to appropriate subpackages. See rhbz #958143
# TODO: Remove these once the above bug is closed.
Requires: %{name}-api = %{version}-%{release}
Requires: %{name}-connector-asynchttpclient = %{version}-%{release}
Requires: %{name}-connector-file = %{version}-%{release}
Requires: %{name}-connector-wagon = %{version}-%{release}
Requires: %{name}-impl = %{version}-%{release}
Requires: %{name}-spi = %{version}-%{release}
Requires: %{name}-test-util = %{version}-%{release}
Requires: %{name}-util = %{version}-%{release}
%description
Aether is standalone library to resolve, install and deploy artifacts
the Maven way developed by Sonatype
Aether is a standalone library to resolve, install and deploy artifacts
the Maven way.
%package api
Summary: Aether API
%description api
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides application
programming interface for Aether repository system.
%package connector-asynchttpclient
Summary: Aether connector for Async Http Client
%description connector-asynchttpclient
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides Aether repository
connector implementation based on Async Http Client.
%package connector-file
Summary: Aether connector for file URLs
%description connector-file
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides Aether repository
connector implementation for repositories using file:// URLs.
%package connector-wagon
Summary: Aether connector for Maven Wagon
%description connector-wagon
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides Aether repository
connector implementation based on Maven Wagon.
%package impl
Summary: Implementation of Aether repository system
%description impl
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides implementation of
Aether repository system.
%package spi
Summary: Aether SPI
%description spi
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package contains Aether service
provider interface (SPI) for repository system implementations and
repository connectors.
%package test-util
Summary: Aether test utilities
%description test-util
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides collection of utility
classes that ease testing of Aether repository system.
%package util
Summary: Aether utilities
%description util
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides a collection of
utility classes to ease usage of Aether repository system.
%package javadoc
Summary: API documentation for %{name}
Summary: Java API documentation for Aether
%description javadoc
%{summary}.
Aether is a standalone library to resolve, install and deploy
artifacts the Maven way. This package provides Java API documentation
for Aether.
%prep
# last part will have to change every time
%setup -q
# we'd need org.sonatype.http-testing-harness so let's remove async
@ -46,30 +125,46 @@ for module in asynchttpclient wagon; do (
%pom_remove_plugin :clirr-maven-plugin aether-api
%pom_remove_plugin :clirr-maven-plugin aether-spi
# Animal sniffer is not useful in Fedora
for module in . aether-connector-wagon aether-util aether-api \
aether-impl aether-connector-asynchttpclient \
aether-connector-file aether-demo aether-test-util; do
%pom_remove_plugin :animal-sniffer-maven-plugin $module
done
# Tests would fail without cglib dependency
# Workaround for rhbz#911365
%pom_xpath_inject pom:project "<dependencies/>"
%pom_add_dep cglib:cglib:2.2:test
%pom_add_dep cglib:cglib:any:test
%build
%mvn_file ":%{name}-{*}" %{name}/@1
%mvn_build
%mvn_build -s
%install
%mvn_install
%files -f .mfiles
%files -f .mfiles-%{name}
%doc README.md
%files api -f .mfiles-%{name}-api
%doc README.md
%dir %{_javadir}/%{name}
%files connector-asynchttpclient -f .mfiles-%{name}-connector-asynchttpclient
%files connector-file -f .mfiles-%{name}-connector-file
%files connector-wagon -f .mfiles-%{name}-connector-wagon
%files impl -f .mfiles-%{name}-impl
%files spi -f .mfiles-%{name}-spi
%files test-util -f .mfiles-%{name}-test-util
%files util -f .mfiles-%{name}-util
%files javadoc -f .mfiles-javadoc
%changelog
* Tue Apr 30 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.13.1-8
- Complete spec file rewrite
- Build with xmvn
- Split into multiple subpackages, resolves: rhbz#916142
- Update to current packaging guidelines
* Thu Feb 7 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.13.1-7
- Build with xmvn
- Disable animal sniffer