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