##
##  perl-dbix.spec -- OpenPKG RPM Package Specification
##  Copyright (c) 2000-2025 OpenPKG Project <http://openpkg.org/>
##
##  Permission to use, copy, modify, and distribute this software for
##  any purpose with or without fee is hereby granted, provided that
##  the above copyright notice and this permission notice appear in all
##  copies.
##
##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
##  SUCH DAMAGE.
##

#   versions of individual parts
%define       V_perl                            5.22
%define       V_dbix_dbschema                   0.45
%define       V_dbix_datasource                 0.02
%define       V_dbix_searchbuilder              1.63_02
%define       V_dbix_dwiw                       0.50
%define       V_dbix_ha                         1.1
%define       V_dbix_anydbd                     2.01
%define       V_dbix_sqlengine                  0.93
%define       V_dbix_simple                     1.37
%define       V_dbix_wrapper                    0.29
%define       V_dbix_contextualfetch            1.03
%define       V_dbix_connector                  0.56
%define       V_ima_dbi                         0.35
%define       V_class_dbi                       3.0.17
%define       V_class_dbi_plugin                0.03
%define       V_class_dbi_plugin_type           0.02
%define       V_class_dbi_plugin_abstractcount  0.08
%define       V_class_dbi_plugin_retrieveall    1.04
%define       V_class_dbi_asform                2.42
%define       V_class_dbi_view                  0.07

#   package information
Name:         perl-dbix
Summary:      High Level Perl Modules on top of DBI
URL:          http://www.cpan.org/
Vendor:       Perl Community
Packager:     OpenPKG Project
Distribution: OpenPKG Community
Class:        BASE
Group:        Perl
License:      GPL/Artistic
Version:      %{V_perl}
Release:      20171209

#   list of sources
Source0:      http://www.cpan.org/authors/id/I/IV/IVAN/DBIx-DBSchema-%{V_dbix_dbschema}.tar.gz
Source1:      http://www.cpan.org/authors/id/I/IV/IVAN/DBIx-DataSource-%{V_dbix_datasource}.tar.gz
Source2:      http://www.cpan.org/authors/id/R/RU/RUZ/DBIx-SearchBuilder-%{V_dbix_searchbuilder}.tar.gz
Source3:      http://www.cpan.org/authors/id/J/JZ/JZAWODNY/DBIx-DWIW-%{V_dbix_dwiw}.tar.gz
Source4:      http://www.cpan.org/authors/id/M/MA/MARKSTOS/DBIx-HA-%{V_dbix_ha}.tar.gz
Source5:      http://www.cpan.org/authors/id/M/MS/MSERGEANT/DBIx-AnyDBD-%{V_dbix_anydbd}.tar.gz
Source6:      http://www.cpan.org/authors/id/E/EV/EVO/DBIx-SQLEngine-%{V_dbix_sqlengine}.tar.gz
Source7:      http://www.cpan.org/authors/id/J/JU/JUERD/DBIx-Simple-%{V_dbix_simple}.tar.gz
Source8:      http://www.cpan.org/authors/id/T/TM/TMTM/DBIx-ContextualFetch-%{V_dbix_contextualfetch}.tar.gz
Source9:      http://www.cpan.org/modules/by-authors/id/P/PE/PERRIN/Ima-DBI-%{V_ima_dbi}.tar.gz
Source10:     http://www.cpan.org/modules/by-module/Class/Class-DBI-v%{V_class_dbi}.tar.gz
Source11:     http://www.cpan.org/authors/id/J/JC/JCZEUS/Class-DBI-Plugin-%{V_class_dbi_plugin}.tar.gz
Source12:     http://www.cpan.org/authors/id/S/SI/SIMON/Class-DBI-Plugin-Type-%{V_class_dbi_plugin_type}.tar.gz
Source13:     http://www.cpan.org/authors/id/J/JC/JCZEUS/Class-DBI-Plugin-AbstractCount-%{V_class_dbi_plugin_abstractcount}.tar.gz
Source14:     http://www.cpan.org/authors/id/T/TM/TMTM/Class-DBI-Plugin-RetrieveAll-%{V_class_dbi_plugin_retrieveall}.tar.gz
Source15:     http://www.cpan.org/authors/id/T/TM/TMTM/Class-DBI-AsForm-%{V_class_dbi_asform}.tar.gz
Source16:     http://www.cpan.org/authors/id/M/MI/MIYAGAWA/Class-DBI-View-%{V_class_dbi_view}.tar.gz
Source17:     http://www.cpan.org/authors/id/D/DO/DOWENS/DBIx-Wrapper-%{V_dbix_wrapper}.tar.gz
Source18:     http://www.cpan.org/authors/id/D/DW/DWHEELER/DBIx-Connector-%{V_dbix_connector}.tar.gz

#   build information
BuildPreReq:  OpenPKG, openpkg >= 20160101, perl >= %{V_perl}, perl-openpkg >= %{V_perl}-20040126
PreReq:       OpenPKG, openpkg >= 20160101, perl >= %{V_perl}
BuildPreReq:  perl-module, perl-dbi, perl-dbi::with_sqlite = yes, perl-util, perl-sys, perl-cache, perl-devel
PreReq:       perl-module, perl-dbi, perl-dbi::with_sqlite = yes, perl-util, perl-sys, perl-cache, perl-devel

%description
    Various modules for using the DBI API of Perl:
    - DBIx::DBSchema (%{V_dbix_dbschema})
    - DBIx::DataSource (%{V_dbix_datasource})
    - DBIx::SearchBuilder (%{V_dbix_searchbuilder})
    - DBIx::DWIW (%{V_dbix_dwiw})
    - DBIx::HA (%{V_dbix_ha})
    - DBIx::AnyDBD (%{V_dbix_anydbd})
    - DBIx::SQLEngine (%{V_dbix_sqlengine})
    - DBIx::Simple (%{V_dbix_simple})
    - DBIx::Wrapper (%{V_dbix_wrapper})
    - DBIx::ContextualFetch (%{V_dbix_contextualfetch})
    - DBIx::Connector (%{V_dbix_connector})
    - Ima::DBI (%{V_ima_dbi})
    - Class::DBI (%{V_class_dbi})
    - Class::DBI::Plugin (%{V_class_dbi_plugin})
    - Class::DBI::Plugin::Type (%{V_class_dbi_plugin_type})
    - Class::DBI::Plugin::AbstractCount (%{V_class_dbi_plugin_abstractcount})
    - Class::DBI::Plugin::RetrieveAll (%{V_class_dbi_plugin_retrieveall})
    - Class::DBI::AsForm (%{V_class_dbi_asform})
    - Class::DBI::View (%{V_class_dbi_view})

%track
    prog perl-dbix:DBIx-DataSource = {
        version   = %{V_dbix_datasource}
        url       = http://www.cpan.org/authors/id/I/IV/IVAN/
        regex     = DBIx-DataSource-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-DBSchema = {
        version   = %{V_dbix_dbschema}
        url       = http://www.cpan.org/authors/id/I/IV/IVAN/
        regex     = DBIx-DBSchema-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-SearchBuilder = {
        version   = %{V_dbix_searchbuilder}
        url       = http://www.cpan.org/authors/id/R/RU/RUZ/
        regex     = DBIx-SearchBuilder-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-DWIW = {
        version   = %{V_dbix_dwiw}
        url       = http://www.cpan.org/authors/id/J/JZ/JZAWODNY/
        regex     = DBIx-DWIW-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-HA = {
        version   = %{V_dbix_ha}
        url       = http://www.cpan.org/authors/id/M/MA/MARKSTOS/
        regex     = DBIx-HA-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-AnyDBD = {
        version   = %{V_dbix_anydbd}
        url       = http://www.cpan.org/authors/id/M/MS/MSERGEANT/
        regex     = DBIx-AnyDBD-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-SQLEngine = {
        version   = %{V_dbix_sqlengine}
        url       = http://www.cpan.org/authors/id/E/EV/EVO/
        regex     = DBIx-SQLEngine-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-Simple = {
        version   = %{V_dbix_simple}
        url       = http://www.cpan.org/authors/id/J/JU/JUERD/
        regex     = DBIx-Simple-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-Wrapper = {
        version   = %{V_dbix_wrapper}
        url       = http://www.cpan.org/authors/id/D/DO/DOWENS/
        regex     = DBIx-Wrapper-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-ContextualFetch = {
        version   = %{V_dbix_contextualfetch}
        url       = http://www.cpan.org/authors/id/T/TM/TMTM/
        regex     = DBIx-ContextualFetch-(__VER__)\.tar\.gz
    }
    prog perl-dbix:DBIx-Connector = {
        version   = %{V_dbix_connector}
        url       = http://www.cpan.org/authors/id/D/DW/DWHEELER/
        regex     = DBIx-Connector-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Ima-DBI = {
        version   = %{V_ima_dbi}
        url       = http://www.cpan.org/modules/by-authors/id/P/PE/PERRIN/
        regex     = Ima-DBI-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI = {
        version   = %{V_class_dbi}
        url       = http://www.cpan.org/modules/by-module/Class/
        regex     = Class-DBI-v?(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI-Plugin = {
        version   = %{V_class_dbi_plugin}
        url       = http://www.cpan.org/authors/id/J/JC/JCZEUS/
        regex     = Class-DBI-Plugin-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI-Plugin-Type = {
        version   = %{V_class_dbi_plugin_type}
        url       = http://www.cpan.org/authors/id/S/SI/SIMON/
        regex     = Class-DBI-Plugin-Type-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI-Plugin-AbstractCount = {
        version   = %{V_class_dbi_plugin_abstractcount}
        url       = http://www.cpan.org/authors/id/J/JC/JCZEUS/
        regex     = Class-DBI-Plugin-AbstractCount-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI-Plugin-RetrieveAll = {
        version   = %{V_class_dbi_plugin_retrieveall}
        url       = http://www.cpan.org/authors/id/T/TM/TMTM/
        regex     = Class-DBI-Plugin-RetrieveAll-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI-AsForm = {
        version   = %{V_class_dbi_asform}
        url       = http://www.cpan.org/authors/id/T/TM/TMTM/
        regex     = Class-DBI-AsForm-(__VER__)\.tar\.gz
    }
    prog perl-dbix:Class-DBI-View = {
        version   = %{V_class_dbi_view}
        url       = http://www.cpan.org/authors/id/M/MI/MIYAGAWA/
        regex     = Class-DBI-View-(__VER__)\.tar\.gz
    }

%prep
    %setup -q -c
    %setup -q -T -D -a 1
    %setup -q -T -D -a 2
    %setup -q -T -D -a 3
    %setup -q -T -D -a 4
    %setup -q -T -D -a 5
    %setup -q -T -D -a 6
    %setup -q -T -D -a 7
    %setup -q -T -D -a 8
    %setup -q -T -D -a 9
    %setup -q -T -D -a 10
    %setup -q -T -D -a 11
    %setup -q -T -D -a 12
    %setup -q -T -D -a 13
    %setup -q -T -D -a 14
    %setup -q -T -D -a 15
    %setup -q -T -D -a 16
    %setup -q -T -D -a 17
    %setup -q -T -D -a 18

%build

%install
    %{l_prefix}/bin/perl-openpkg prepare
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE0}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE1}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE2}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE3}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE4}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE5}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE6}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE7}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE8}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE9}  configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE10} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE11} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE12} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE13} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE14} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE15} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE16} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE17} configure build install
    %{l_prefix}/bin/perl-openpkg -d %{SOURCE18} configure build install
    %{l_prefix}/bin/perl-openpkg -F perl-openpkg-files fixate cleanup
    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} `cat perl-openpkg-files`

%files -f files

%clean

