Files
perl-Badger/perl-Badger.spec
2025-08-12 18:11:55 +02:00

199 lines
7.0 KiB
RPMSpec

#
# spec file for package perl-Badger
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define cpan_name Badger
Name: perl-Badger
Version: 0.160.0
Release: 0
# 0.16 -> normalize -> 0.160.0
%define cpan_version 0.16
License: Artistic-1.0 OR GPL-1.0-or-later
Summary: Application programming toolkit
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/A/AB/ABW/%{cpan_name}-%{cpan_version}.tar.gz
Source1: cpanspec.yml
Source100: README.md
BuildArch: noarch
BuildRequires: perl
BuildRequires: perl-macros
Provides: perl(Badger) = %{version}
Provides: perl(Badger::App)
Provides: perl(Badger::Apps)
Provides: perl(Badger::Base)
Provides: perl(Badger::Base::Trial)
Provides: perl(Badger::Class) = 0.10.0
Provides: perl(Badger::Class::Config)
Provides: perl(Badger::Class::Methods)
Provides: perl(Badger::Class::Vars)
Provides: perl(Badger::Codec)
Provides: perl(Badger::Codec::Base64)
Provides: perl(Badger::Codec::Chain)
Provides: perl(Badger::Codec::Encode)
Provides: perl(Badger::Codec::Encoding)
Provides: perl(Badger::Codec::HTML)
Provides: perl(Badger::Codec::JSON)
Provides: perl(Badger::Codec::Storable)
Provides: perl(Badger::Codec::TT)
Provides: perl(Badger::Codec::Timestamp)
Provides: perl(Badger::Codec::URI)
Provides: perl(Badger::Codec::URL)
Provides: perl(Badger::Codec::Unicode)
Provides: perl(Badger::Codec::YAML)
Provides: perl(Badger::Codecs)
Provides: perl(Badger::Comparable)
Provides: perl(Badger::Config)
Provides: perl(Badger::Config::Filesystem)
Provides: perl(Badger::Config::Item)
Provides: perl(Badger::Config::Schema)
Provides: perl(Badger::Constants) = 0.10.0
Provides: perl(Badger::Data)
Provides: perl(Badger::Data::Facet)
Provides: perl(Badger::Data::Facet::Class)
Provides: perl(Badger::Data::Facet::List)
Provides: perl(Badger::Data::Facet::List::MaxSize)
Provides: perl(Badger::Data::Facet::List::MinSize)
Provides: perl(Badger::Data::Facet::List::Size)
Provides: perl(Badger::Data::Facet::Number)
Provides: perl(Badger::Data::Facet::Number::Max)
Provides: perl(Badger::Data::Facet::Number::Min)
Provides: perl(Badger::Data::Facet::Text)
Provides: perl(Badger::Data::Facet::Text::Length)
Provides: perl(Badger::Data::Facet::Text::MaxLength)
Provides: perl(Badger::Data::Facet::Text::MinLength)
Provides: perl(Badger::Data::Facet::Text::Pattern)
Provides: perl(Badger::Data::Facet::Text::Whitespace)
Provides: perl(Badger::Data::Facets)
Provides: perl(Badger::Data::Type)
Provides: perl(Badger::Data::Type::Class)
Provides: perl(Badger::Data::Type::Number)
Provides: perl(Badger::Data::Type::Simple)
Provides: perl(Badger::Data::Type::Text)
Provides: perl(Badger::Data::Types)
Provides: perl(Badger::Date)
Provides: perl(Badger::Debug)
Provides: perl(Badger::Duration)
Provides: perl(Badger::Exception)
Provides: perl(Badger::Exporter) = 0.10.0
Provides: perl(Badger::Factory)
Provides: perl(Badger::Factory::Class)
Provides: perl(Badger::Filesystem)
Provides: perl(Badger::Filesystem::Base)
Provides: perl(Badger::Filesystem::Directory)
Provides: perl(Badger::Filesystem::File)
Provides: perl(Badger::Filesystem::FileSpec::Universal)
Provides: perl(Badger::Filesystem::Path)
Provides: perl(Badger::Filesystem::Universal)
Provides: perl(Badger::Filesystem::Virtual)
Provides: perl(Badger::Filesystem::Visitor)
Provides: perl(Badger::Filter)
Provides: perl(Badger::Hub)
Provides: perl(Badger::Hub::Badger)
Provides: perl(Badger::Log)
Provides: perl(Badger::Log::File)
Provides: perl(Badger::Logic)
Provides: perl(Badger::Logic::And)
Provides: perl(Badger::Logic::Expr)
Provides: perl(Badger::Logic::Item)
Provides: perl(Badger::Logic::Not)
Provides: perl(Badger::Logic::Or)
Provides: perl(Badger::Mixin)
Provides: perl(Badger::Modules)
Provides: perl(Badger::Period)
Provides: perl(Badger::Progress)
Provides: perl(Badger::Prototype)
Provides: perl(Badger::Rainbow)
Provides: perl(Badger::Reporter)
Provides: perl(Badger::Reporter::App)
Provides: perl(Badger::Test)
Provides: perl(Badger::Test::Manager)
Provides: perl(Badger::Timestamp)
Provides: perl(Badger::URL)
Provides: perl(Badger::Utils) = 0.20.0
Provides: perl(Badger::Workplace)
Provides: perl(Badger::Workspace)
%undefine __perllib_provides
%{perl_requires}
# MANUAL BEGIN
BuildRequires: perl(YAML)
# MANUAL END
%description
The Badger toolkit is a collection of Perl modules designed to simplify the
process of building object-oriented Perl applications. It provides a set of
_foundation classes_ upon which you can quickly build robust and reliable
systems that are simple, sexy and scalable. See 'Badger::Intro' for further
information.
The 'Badger' module is a front-end to other 'Badger' modules. You can use
it to import any of the exportable items from any other 'Badger' module.
Simply specify the module name, minus the 'Badger::' prefix as a load
option.
For example:
use Badger
Filesystem => 'Dir File',
Utils => 'numlike textlike',
Constants => 'ARRAY HASH',
Codecs => [codec => 'base64'];
This is equivalent to:
use Badger;
use Badger::Filesystem 'Dir File';
use Badger::Utils 'numlike textlike',
use Badger::Constants 'ARRAY HASH',
use Badger::Codecs codec => 'base64';
Note that multiple arguments for a module should be defined as a list
reference.
use Badger
...etc...
Codecs => [codec => 'base64'];
This is equivalent to:
use Badger::Codecs [codec => 'base64'];
Which is also equivalent to:
use Badger::Codecs codec => 'base64';
%prep
%autosetup -n %{cpan_name}-%{cpan_version}
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
%build
perl Makefile.PL INSTALLDIRS=vendor
%make_build
%check
make test
%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist
%files -f %{name}.files
%doc Changes MAINTAINER README RELEASE TODO
%changelog