Blob Blame History Raw
%global namedreltag .CR3
%global namedversion %{version}%{?namedreltag}

Name:             xnio
Version:          3.0.0
Release:          0.1%{namedreltag}%{?dist}
Summary:          JBoss XNIO
Group:            Development/Libraries
License:          LGPLv2+
URL:              http://www.jboss.org/xnio

# git clone git://github.com/jboss-remoting/xnio.git
# cd xnio/ && git archive --format=tar --prefix=xnio-3.0.0.CR3/ 3.0.0.CR3 | xz > xnio-3.0.0.CR3.tar.xz
Source0:          %{name}-%{namedversion}.tar.xz
Patch00:          %{name}-%{namedversion}-jmock.patch

BuildArch:        noarch

BuildRequires:    jpackage-utils
BuildRequires:    java-1.7.0-devel
BuildRequires:    maven

BuildRequires:    maven-compiler-plugin
BuildRequires:    maven-install-plugin
BuildRequires:    maven-jar-plugin
BuildRequires:    maven-javadoc-plugin
BuildRequires:    maven-release-plugin
BuildRequires:    maven-resources-plugin
BuildRequires:    jboss-parent
BuildRequires:    jboss-logging
BuildRequires:    jboss-logmanager
BuildRequires:    maven-injection-plugin
BuildRequires:    maven-surefire-provider-junit4
BuildRequires:    junit4

Requires:         jboss-logmanager
Requires:         jboss-logging
Requires:         jpackage-utils
Requires:         java

%description
A simplified low-level I/O layer which can be used anywhere you are
using NIO today. It frees you from the hassle of dealing with Selectors and
the lack of NIO support for multicast sockets and non-socket I/O, while still
maintaining all the capabilities present in NIO.

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

%description javadoc
This package contains the API documentation for %{name}.

%prep
%setup -q -n %{name}-%{namedversion}
%patch0 -p1

%build
mvn-rpmbuild -Dmaven.test.skip=true install javadoc:aggregate

%install
# JAR
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/jboss
cp -p api/target/%{name}-api-%{namedversion}.jar $RPM_BUILD_ROOT%{_javadir}/jboss/%{name}-api.jar
cp -p nio-impl/target/%{name}-nio-%{namedversion}.jar $RPM_BUILD_ROOT%{_javadir}/jboss/%{name}-nio.jar

# APIDOCS
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
cp -rp target/site/apidocs $RPM_BUILD_ROOT%{_javadocdir}/%{name}

# POMS
install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir}
install -pm 644 api/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.jboss-%{name}-api.pom
install -pm 644 nio-impl/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.jboss-%{name}-nio.pom
install -pm 644 pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.jboss-%{name}.pom

# DEPMAP
%add_maven_depmap JPP.jboss-%{name}-api.pom jboss/%{name}-api.jar
%add_maven_depmap JPP.jboss-%{name}-nio.pom jboss/%{name}-nio.jar
%add_maven_depmap JPP.jboss-%{name}.pom

%files
%{_mavenpomdir}/*
%{_mavendepmapfragdir}/*
%{_javadir}/*
%doc COPYING.txt

%files javadoc
%{_javadocdir}/%{name}
%doc COPYING.txt

%changelog
* Thu Nov 17 2011 Marek Goldmann <mgoldman@redhat.com> 3.0.0-0.1.CR3
- Upstream release 3.0.0.CR3

* Fri Oct 07 2011 Marek Goldmann <mgoldman@redhat.com> 3.0.0-0.1.Beta6
- Upstream release 3.0.0.Beta6

* Fri Oct 07 2011 Marek Goldmann <mgoldman@redhat.com> 3.0.0-0.2.Beta4
- Spec file cleanup

* Fri Jun 03 2011 Marek Goldmann <mgoldman@redhat.com> 3.0.0-0.1.Beta4
- Initial packaging