%global base_name io %global short_name commons-%{base_name} Name: apache-%{short_name} Version: 2.0 Release: 1%{?dist} Epoch: 1 Summary: Utilities to assist with developing IO functionality License: ASL 2.0 Group: Development/Libraries URL: http://commons.apache.org/%{base_name} Source0: http://archive.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz BuildArch: noarch BuildRequires: java-devel >= 1:1.6.0 BuildRequires: jpackage-utils BuildRequires: junit4 BuildRequires: maven2 >= 2.2.1 BuildRequires: maven-antrun-plugin BuildRequires: maven-assembly-plugin BuildRequires: maven-compiler-plugin BuildRequires: maven-idea-plugin BuildRequires: maven-install-plugin BuildRequires: maven-jar-plugin BuildRequires: maven-javadoc-plugin BuildRequires: maven-plugin-bundle BuildRequires: maven-resources-plugin BuildRequires: maven-surefire-plugin BuildRequires: maven-surefire-provider-junit4 Requires: java >= 1:1.6.0 Requires: jpackage-utils Requires(post): jpackage-utils Requires(postun): jpackage-utils BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # This should go away with F-17 Provides: jakarta-%{short_name} = %{epoch}:%{version}-%{release} Obsoletes: jakarta-%{short_name} <= 0:1.4 %description Commons-IO contains utility classes, stream implementations, file filters, and endian classes. It is a library of utilities to assist with developing IO functionality. %package javadoc Summary: API documentation for %{name} Group: Documentation Requires: jpackage-utils Obsoletes: jakarta-%{short_name}-javadoc <= 0:1.4 %description javadoc This package contains the API documentation for %{name}. %prep %setup -q -n %{short_name}-%{version}-src sed -i 's/\r//' *.txt %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 $RPM_BUILD_ROOT # jars install -d -m 755 $RPM_BUILD_ROOT%{_javadir} install -p -m 644 target/%{short_name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar pushd $RPM_BUILD_ROOT%{_javadir} for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|apache-||g"` ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"` ln -sf ${jar} `echo $jar| sed "s|apache-\(.*\)-%{version}|\1|g"` done popd # come back from javadir # pom install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir} install -pm 644 pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-%{short_name}.pom %add_to_maven_depmap org.apache.commons %{short_name} %{version} JPP %{short_name} # following line is only for backwards compatibility. New packages # should use proper groupid org.apache.commons %add_to_maven_depmap %{short_name} %{short_name} %{version} JPP %{short_name} # javadoc install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} %clean rm -rf $RPM_BUILD_ROOT %post %update_maven_depmap %postun %update_maven_depmap %files %defattr(-,root,root,-) %doc LICENSE.txt NOTICE.txt RELEASE-NOTES.txt %{_javadir}/*.jar %{_mavenpomdir}/JPP-%{short_name}.pom %{_mavendepmapfragdir}/* %files javadoc %defattr(-,root,root,-) %doc LICENSE.txt NOTICE.txt %doc %{_javadocdir}/%{name}-%{version} %doc %{_javadocdir}/%{name} %changelog * Fri Oct 22 2010 Chris Spike 1:2.0-1 - Updated to 2.0 - Cleaned up BRs * Thu Jul 8 2010 Stanislav Ochotnicky - 1:1.4-6 - Add license to javadoc subpackage * Fri May 21 2010 Stanislav Ochotnicky - 1:1.4-5 - Correct depmap filename for backward compatibility * Mon May 17 2010 Stanislav Ochotnicky - 1:1.4-4 - Fix maven depmap JPP name to short_name * Wed May 12 2010 Stanislav Ochotnicky - 1:1.4-3 - Add obsoletes to javadoc sub-package * Wed May 12 2010 Stanislav Ochotnicky - 1:1.4-2 - Add symlink to short_name.jar - Fix mavendepmapfragdir wildcard * Tue May 11 2010 Stanislav Ochotnicky - 1:1.4-1 - Rename and rebase of jakarta-commons-io - Clean up whole spec