# Prevent brp-java-repack-jars from being run.
%define __jar_repack %{nil}
%global bundle org.osgi.foundation
%global felixdir %{_javadir}/felix
Name: felix-osgi-foundation
Version: 1.2.0
Release: 3%{?dist}
Summary: Felix OSGi Foundation EE Bundle
Group: Development/Libraries
License: ASL 2.0
URL: http://felix.apache.org
Source0: http://www.apache.org/dist/felix/%{bundle}-%{version}-project.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
BuildRequires: java-devel >= 1:1.6.0
BuildRequires: jpackage-utils
BuildRequires: maven2
BuildRequires: maven2-plugin-resources
BuildRequires: maven2-plugin-compiler
BuildRequires: maven-surefire-maven-plugin
BuildRequires: maven2-plugin-jar
BuildRequires: maven2-plugin-install
BuildRequires: maven2-plugin-javadoc
BuildRequires: maven-doxia-sitetools
Requires: java >= 1:1.6.0
Requires(post): jpackage-utils
Requires(postun): jpackage-utils
%description
OSGi Foundation Execution Environment (EE) Classes.
%package javadoc
Group: Documentation
Summary: Javadoc for %{name}
Requires: jpackage-utils
%description javadoc
API documentation for %{name}.
%global publicPOM %{_mavenpomdir}/JPP.felix-%{name}.pom
%prep
%setup -q -n %{bundle}-%{version}
%build
export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
%__mkdir_p $MAVEN_REPO_LOCAL
mvn-jpp \
-Dmaven.repo.local=$MAVEN_REPO_LOCAL \
install javadoc:javadoc
%install
%__rm -rf %{buildroot}
# jars
install -d -m 0755 %{buildroot}%{felixdir}
install -m 644 target/%{bundle}-%{version}.jar \
%{buildroot}%{felixdir}/%{bundle}-%{version}.jar
(cd %{buildroot}%{felixdir} && for jar in *-%{version}*; \
do %__ln_s -f ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
%add_to_maven_depmap org.apache.felix %{bundle} %{version} JPP/felix %{bundle}
# poms
install -d -m 755 %{buildroot}%{_mavenpomdir}
install -pm 644 pom.xml %{buildroot}%{publicPOM}
# javadoc
install -d -m 0755 %{buildroot}%{_javadocdir}/%{name}-%{version}
%__cp -pr target/site/api*/* %{buildroot}%{_javadocdir}/%{name}-%{version}/
%__ln_s %{name}-%{version} %{buildroot}%{_javadocdir}/%{name}
%__rm -rf target/site/api*
%post
%update_maven_depmap
%postun
%update_maven_depmap
%clean
%__rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc LICENSE
%{felixdir}
%{publicPOM}
%config(noreplace) %{_mavendepmapfragdir}/%{name}
%files javadoc
%defattr(-,root,root,-)
%{_javadocdir}/%{name}-%{version}
%{_javadocdir}/%{name}
%changelog
* Wed Jun 30 2010 Victor G. Vasilyev <victor.vasilyev@sun.com> 1.2.0-3
- The javadoc subpackage should have requires on jpackage-utils
- Use the mavenpomdir macro
- Rename the mavenPOM macro to publicPOM
* Tue Jun 29 2010 Victor G. Vasilyev <victor.vasilyev@sun.com> 1.2.0-2
- Use maven to build the project instead of ant
* Thu Jun 24 2010 Victor G. Vasilyev <victor.vasilyev@sun.com> 1.2.0-1
- Release 1.2.0