%global base_name dbcp
%global short_name commons-%{base_name}
Name: apache-%{short_name}
Version: 1.4
Release: 6%{?dist}
Summary: Apache Commons DataBase Pooling Package
Group: Development/Libraries
License: ASL 2.0
URL: http://commons.apache.org/%{base_name}/
Source0: http://www.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz
# Depmap needed to remove tomcat* deps (needed only for testing)
# and fix geronimo transaction
Source1: %{short_name}.depmap
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
BuildRequires: java-devel >= 1:1.6.0
BuildRequires: jpackage-utils
BuildRequires: apache-commons-parent
BuildRequires: apache-commons-pool
BuildRequires: geronimo-parent-poms
BuildRequires: jta
BuildRequires: maven-plugin-cobertura
Requires: java >= 1:1.6.0
Requires: jpackage-utils
Requires: apache-commons-pool
Requires(post): jpackage-utils
Requires(postun): jpackage-utils
# This should go away with F-17
Provides: jakarta-%{short_name} = 0:%{version}-%{release}
Obsoletes: jakarta-%{short_name} < 0:1.4-1
Obsoletes: jakarta-%{short_name}-tomcat5 < 0:1.4-1
Obsoletes: hibernate_jdbc_cache < 0:1.4-1
%description
Many Apache projects support interaction with a relational database. Creating a
new connection for each user can be time consuming (often requiring multiple
seconds of clock time), in order to perform a database transaction that might
take milliseconds. Opening a connection per user can be unfeasible in a
publicly-hosted Internet application where the number of simultaneous users can
be very large. Accordingly, developers often wish to share a "pool" of open
connections between all of the application's current users. The number of users
actually performing a request at any given time is usually a very small
percentage of the total number of active users, and during request processing
is the only time that a database connection is required. The application itself
logs into the DBMS, and handles any user account issues internally.
%package javadoc
Summary: Javadoc for %{name}
Group: Documentation
Requires: jpackage-utils
# This should go away with F-17
Obsoletes: jakarta-%{short_name}-javadoc < 0:1.4-1
%description javadoc
This package contains the API documentation for %{name}.
%prep
%setup -q -n %{short_name}-%{version}-src
iconv -f iso8859-1 -t utf-8 RELEASE-NOTES.txt > RELEASE-NOTES.txt.conv && mv -f RELEASE-NOTES.txt.conv RELEASE-NOTES.txt
%build
export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
# Skip tests, tomcat:naming-java and tomcat:naming-common not available
mvn-jpp \
-e \
-Dmaven2.jpp.mode=true \
-Dmaven2.jpp.depmap.file="%{SOURCE1}" \
-Dmaven.test.skip=true \
-Dmaven.repo.local=$MAVEN_REPO_LOCAL \
install javadoc:javadoc
%install
rm -rf %{buildroot}
# jars
install -d -m 0755 %{buildroot}%{_javadir}
install -pm 644 target/%{short_name}-%{version}.jar %{buildroot}%{_javadir}/%{name}-%{version}.jar
(cd %{buildroot}%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|apache-||g"`; done)
(cd %{buildroot}%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
# pom
install -d -m 755 %{buildroot}%{_mavenpomdir}
install -pm 644 pom.xml %{buildroot}%{_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 and also artifactid
%add_to_maven_depmap %{short_name} %{short_name} %{version} JPP %{short_name}
# 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}
%post
%update_maven_depmap
%postun
%update_maven_depmap
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc LICENSE.txt NOTICE.txt README.txt RELEASE-NOTES.txt
%{_javadir}/*
%{_mavenpomdir}/*
%{_mavendepmapfragdir}/*
%files javadoc
%defattr(-,root,root,-)
%doc LICENSE.txt
%{_javadocdir}/%{name}-%{version}
%{_javadocdir}/%{name}
%changelog
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Nov 9 2010 Chris Spike <chris.spike@arcor.de> 1.4-5
- Removed maven* BRs in favour of apache-commons-parent
- Added deprecated groupId to depmap for compatibility reasons
- Removed commons-pool from custom depmap
* Wed Oct 27 2010 Chris Spike <chris.spike@arcor.de> 1.4-4
- Added depmap entry to find commons-pool.jar
* Wed Oct 27 2010 Chris Spike <chris.spike@arcor.de> 1.4-3
- Added BR apache-commons-pool
* Mon Oct 18 2010 Chris Spike <chris.spike@arcor.de> 1.4-2
- Removed Epoch
* Mon Oct 4 2010 Chris Spike <chris.spike@arcor.de> 1.4-1
- Rename and rebase from jakarta-commons-dbcp