##
##  perl-util.spec -- OpenPKG RPM Specification
##  Copyright (c) 2000-2003 Cable & Wireless Deutschland GmbH
##  Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
##  Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.com>
##
##  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_alias                    2.32
%define       V_class_loader             2.02
%define       V_class_makemethods        1.005
%define       V_class_methodmaker        1.08
%define       V_class_returnvalue        0.40
%define       V_devel_stacktrace         1.02
%define       V_attribute_handlers       0.78
%define       V_params_validate          0.24
%define       V_class_data_inheritable   0.02
%define       V_exception_class          1.07
%define       V_object_realize_later     0.10
%define       V_class_container          0.08
%define       V_cache_cache              1.01

#   package information
Name:         perl-util
Summary:      Perl Modules for general utility usage
URL:          http://www.cpan.org/
Vendor:       Perl Community
Packager:     The OpenPKG Project
Distribution: OpenPKG [BASE]
Group:        Language
License:      GPL/Artistic
Version:      20030110
Release:      20030110

#   list of sources
Source0:      http://www.cpan.org/modules/by-module/Alias/Alias-%{V_alias}.tar.gz
Source1:      http://www.cpan.org/modules/by-module/Class/Class-Loader-%{V_class_loader}.tar.gz
Source2:      http://www.cpan.org/modules/by-module/Class/Class-MakeMethods-%{V_class_makemethods}.tar.gz
Source3:      http://www.cpan.org/modules/by-module/Class/Class-MethodMaker-%{V_class_methodmaker}.tar.gz
Source4:      http://www.cpan.org/modules/by-module/Devel/Devel-StackTrace-%{V_devel_stacktrace}.tar.gz
Source5:      http://www.cpan.org/modules/by-module/Class/Class-ReturnValue-%{V_class_returnvalue}.tar.gz
Source6:      http://www.cpan.org/modules/by-module/Attribute/Attribute-Handlers-%{V_attribute_handlers}.tar.gz
Source7:      http://www.cpan.org/modules/by-module/Attribute/Params-Validate-%{V_params_validate}.tar.gz
Source8:      http://www.cpan.org/modules/by-module/Class/Class-Data-Inheritable-%{V_class_data_inheritable}.tar.gz
Source9:      http://www.cpan.org/modules/by-module/Exception/Exception-Class-%{V_exception_class}.tar.gz
Source10:     http://www.cpan.org/modules/by-module/Object/Object-Realize-Later-%{V_object_realize_later}.tar.gz
Source11:     http://www.cpan.org/modules/by-module/Class/Class-Container-%{V_class_container}.tar.gz
Source12:     http://www.cpan.org/modules/by-module/Cache/Cache-Cache-%{V_cache_cache}.tar.gz

#   build information
Prefix:       %{l_prefix}
BuildRoot:    %{l_buildroot}
BuildPreReq:  OpenPKG, openpkg >= 20020206, perl >= 5.8.0
PreReq:       OpenPKG, openpkg >= 20020206, perl >= 5.8.0
AutoReq:      no
AutoReqProv:  no

%description
    Perl modules for general utility usage:
    - Alias                       (%{V_alias})
    - Class::Loader               (%{V_class_loader})
    - Class::MakeMethods          (%{V_class_makemethods})
    - Class::MethodMaker          (%{V_class_methodmaker})
    - Class::ReturnValue          (%{V_class_returnvalue})
    - Devel::StackTrace           (%{V_devel_stacktrace})
    - Attribute::Handlers         (%{V_attribute_handlers})
    - Params::Validate            (%{V_params_validate})
    - Class::Data::Inheritable    (%{V_class_data_inheritable})
    - Exception::Class            (%{V_exception_class})
    - Object::Realize::Later      (%{V_object_realize_later})
    - Class::Container            (%{V_class_container})
    - Cache::Cache                (%{V_cache_cache})

%prep
    %setup0  -q -c
    %setup1  -q -T -D -a 1
    %setup2  -q -T -D -a 2
    %setup3  -q -T -D -a 3
    %setup4  -q -T -D -a 4
    %setup5  -q -T -D -a 5
    %setup6  -q -T -D -a 6
    %setup7  -q -T -D -a 7
    %setup8  -q -T -D -a 8
    %setup9  -q -T -D -a 9
    %setup10 -q -T -D -a 10
    %setup11 -q -T -D -a 11
    %setup12 -q -T -D -a 12

%build

%install
    #   perform common prolog operations
    %{l_prefix}/bin/perl-openpkg prolog

    #   build and install individual modules
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE0}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE1}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE2}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE3}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE4}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE5}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE6}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE7}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE8}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE9}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE10}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE11}
    %{l_prefix}/bin/perl-openpkg install -d %{SOURCE12}

    #   perform common epilog operations
    %{l_prefix}/bin/perl-openpkg epilog

%files -f files

%clean
    rm -rf $RPM_BUILD_ROOT

