-# TODO
-# - perl(RPC::PlClient) as optional? If yes, separate /proxy/i to subpackage.
#
# Conditional build:
-%bcond_without autodeps # don't BR packages needed only for resolving deps
+%bcond_with coro # don't package Coro transport
%bcond_without tests # perform "make test"
-#
-%include /usr/lib/rpm/macros.perl
+
%define pdir DBI
%define pnam DBI
+%include /usr/lib/rpm/macros.perl
Summary: DBI - database independent interface for Perl
Summary(cs.UTF-8): API pro přístup k databázím pro Perl
Summary(da.UTF-8): En database-API for Perl
Summary(sv.UTF-8): Ett databasåtkomst-API för Perl
Summary(zh_CN.UTF-8): Perl 的数据库访问 API。
Name: perl-DBI
-Version: 1.58
-Release: 1
+Version: 1.636
+Release: 2
License: GPL or Artistic
Group: Development/Languages/Perl
-Source0: http://www.cpan.org/modules/by-module/%{pdir}/%{pnam}-%{version}.tar.gz
-# Source0-md5: 132a7a28481824692e48d71b06994e09
-Patch0: %{name}-changes.patch
-BuildRequires: perl-devel >= 1:5.8.0
+Source0: http://www.cpan.org/modules/by-module/DBI/%{pnam}-%{version}.tar.gz
+# Source0-md5: 60f291e5f015550dde71d1858dfe93ba
+URL: http://search.cpan.org/dist/DBI/
+BuildRequires: perl-ExtUtils-MakeMaker >= 6.48
+BuildRequires: perl-devel >= 1:5.8.1
BuildRequires: rpm-perlprov >= 4.1-13
-%if %{with autodeps} || %{with tests}
+%if %{with tests}
BuildRequires: perl-Net-Daemon
-BuildRequires: perl-PlRPC
+BuildRequires: perl-PlRPC >= 0.2001
+BuildRequires: perl-Test-Simple >= 0.90
%endif
+Suggests: perl-Clone >= 0.34
+Suggests: perl-PlRPC >= 0.2001
+Suggests: perl-SQL-Statement >= 1.402
Obsoletes: perl-DBI-FAQ
-Conflicts: perl-DBD-CSV < 1:0.21
+Conflicts: perl-DBD-Amazon < 0.10
+Conflicts: perl-DBD-AnyData < 0.110
+Conflicts: perl-DBD-CSV < 1:0.36
+Conflicts: perl-DBD-Google < 0.51
+Conflicts: perl-DBD-PO < 2.10
+Conflicts: perl-DBD-RAM < 0.072
+Conflicts: perl-SQL-Statement < 1.33
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _noautoreq 'perl(DBD::<foo>)' 'perl(DBI::Format)' 'perl(DBI::PurePerl)' 'perl(DBI)' 'perl(DBI::.*)'
-%define _noautoreqdep 'perl(UNIVERSAL)'
+%define _noautoreq_perl DBD::<foo> DBI DBI::.* DBD::File::.*
%description
The DBI is a database access module for the Perl programming language.
明细表定义了一组函数、变量和定规,它们提供了一个独立于实际被使用的数据
库之外的连贯的数据库 界面。
+%package -n perl-DBD-Proxy
+Summary: DBD::Proxy - A proxy driver for the DBI
+Summary(pl.UTF-8): DBD::Proxy - sterownik proxy dla DBI
+Group: Development/Languages/Perl
+Requires: %{name} = %{version}-%{release}
+
+%description -n perl-DBD-Proxy
+DBD::Proxy is a Perl module for connecting to a database via a remote
+DBI driver.
+
+This is of course not needed for DBI drivers which already support
+connecting to a remote database, but there are engines which don't
+offer network connectivity.
+
+%description -n perl-DBD-Proxy -l pl.UTF-8
+DBD::Proxy to moduł Perla służący do łączenia się z bazą danych
+poprzez zdalny sterownik DBI.
+
+Nie jest to oczywiście potrzebne dla sterowników DBI które same
+obsługują łączenie się ze zdalną bazą danych, ale oprócz nich są
+silniki, które nie oferują łączności sieciowej.
+
+%package Coro
+Summary: Asynchronous DBD::Gofer stream transport using Coro
+Group: Development/Languages/Perl
+Requires: %{name} = %{version}-%{release}
+
+%description Coro
+This is an experimental asynchronous DBD::Gofer stream transport for
+DBI implemented on top of Coro. The BIG WIN from using Coro is that it
+enables the use of existing DBI frameworks like DBIx::Class.
+
%package ProfileDumper-Apache
Summary: DBI::ProfileDumper::Apache - capture DBI profiling data from Apache/mod_perl
Summary(pl.UTF-8): DBI::ProfileDumper::Apache - przechwytywanie danych parametryzujących DBI z Apache/mod_perl
%prep
%setup -q -n %{pnam}-%{version}
-%patch0 -p1
-mv Roadmap.pod lib/DBI
mv Changes lib/DBI/Changes.pod
echo 'man DBI::Changes' > Changes
%{__perl} Makefile.PL \
INSTALLDIRS=vendor
%{__make} \
+ CC="%{__cc}" \
OPTIMIZE="%{rpmcflags}"
%{?with_tests:%{__make} test}
%install
rm -rf $RPM_BUILD_ROOT
-
%{__make} pure_install \
DESTDIR=$RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{perl_vendorlib}/DBIx,%{perl_vendorarch}/{DBIx,auto/{DBD,DBIx}}}
# no reason to include Bundle::* in rpms
-rm -rf $RPM_BUILD_ROOT{%{perl_vendorarch}/Bundle,%{_mandir}/man3/Bundle::*}
-rm $RPM_BUILD_ROOT%{perl_vendorarch}/auto/DBI/.packlist
+%{__rm} -r $RPM_BUILD_ROOT{%{perl_vendorarch}/Bundle,%{_mandir}/man3/Bundle::*}
+%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/DBI/.packlist
# not our os
-rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/{DBI/W32ODBC,Win32/DBIODBC}.pm
-rm -f $RPM_BUILD_ROOT%{_mandir}/man3/{DBI::W32,Win32::DBI}ODBC.3pm
-# different format in %doc
-rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/{TASKS,DBI/{Changes,Roadmap}}.pod
+%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/{DBI/W32ODBC,Win32/DBIODBC}.pm
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/{DBI::W32,Win32::DBI}ODBC.3pm
+# already in doc
+%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/DBI/Changes.pod
+
+%if %{without coro}
+%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/DBD/Gofer/Transport/corostream.pm
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc Changes README
-%attr(755,root,root) %{_bindir}/*
+%doc Changes README.md
+%attr(755,root,root) %{_bindir}/dbilogstrip
+%attr(755,root,root) %{_bindir}/dbiprof
+%attr(755,root,root) %{_bindir}/dbiproxy
%dir %{perl_vendorlib}/DBIx
%{perl_vendorarch}/*.pl
%{perl_vendorarch}/DBI.pm
%{perl_vendorarch}/DBI/Gofer
%{perl_vendorarch}/DBI/SQL
%{perl_vendorarch}/DBI/Util
-%{perl_vendorarch}/DBI/[DFPS]*.pm
+%{perl_vendorarch}/DBI/*.pm
%{perl_vendorarch}/DBD
%dir %{perl_vendorarch}/auto/DBD
%dir %{perl_vendorarch}/auto/DBI
%dir %{perl_vendorarch}/auto/DBIx
%{perl_vendorarch}/auto/DBI/*.h
%{perl_vendorarch}/auto/DBI/Driver.xst
-%{perl_vendorarch}/auto/DBI/DBI.bs
%attr(755,root,root) %{perl_vendorarch}/auto/DBI/DBI.so
-%{_mandir}/man1/*
-%{_mandir}/man3/DBD*
-%{_mandir}/man3/DBI.3*
-%{_mandir}/man3/DBI::Profile.3*
-%{_mandir}/man3/DBI::ProfileData.3*
-%{_mandir}/man3/DBI::ProfileDumper.3*
-%{_mandir}/man3/DBI::ProfileSubs.3pm*
-%{_mandir}/man3/DBI::ProxyServer.3*
-%{_mandir}/man3/DBI::PurePerl.3*
-%{_mandir}/man3/DBI::[!PW]*
-%{_mandir}/man3/TASKS.3pm*
+%{_mandir}/man1/dbilogstrip.1p*
+%{_mandir}/man1/dbiprof.1p*
+%{_mandir}/man1/dbiproxy.1p*
+%{_mandir}/man3/DBD::*.3pm*
+%{_mandir}/man3/DBI*.3pm*
+
+# in subpackages
+%exclude %{_mandir}/man3/DBD::Proxy.3pm*
+%exclude %{_mandir}/man3/DBI::ProfileDumper::Apache.3pm*
+%exclude %{_mandir}/man3/DBI::ProxyServer.3pm*
+%exclude %{perl_vendorarch}/DBD/Proxy.pm
+%exclude %{perl_vendorarch}/DBI/ProfileDumper/Apache.pm
+%exclude %{perl_vendorarch}/DBI/ProxyServer.pm
+%if %{with coro}
+%exclude %{perl_vendorarch}/DBD/Gofer/Transport/corostream.pm
+%endif
+
+%files -n perl-DBD-Proxy
+%defattr(644,root,root,755)
+%{perl_vendorarch}/DBD/Proxy.pm
+%{perl_vendorarch}/DBI/ProxyServer.pm
+%{_mandir}/man3/DBD::Proxy.3pm*
+%{_mandir}/man3/DBI::ProxyServer.3pm*
+
+%if %{with coro}
+%files Coro
+%defattr(644,root,root,755)
+%doc ex/corogofer.pl
+%{perl_vendorarch}/DBD/Gofer/Transport/corostream.pm
+%endif
%files ProfileDumper-Apache
%defattr(644,root,root,755)
%dir %{perl_vendorarch}/DBI/ProfileDumper
%{perl_vendorarch}/DBI/ProfileDumper/Apache.pm
-%{_mandir}/man3/DBI::ProfileDumper::Apache.3*
+%{_mandir}/man3/DBI::ProfileDumper::Apache.3pm*