Files
perl-App-Sqitch/perl-App-Sqitch.spec
2025-08-12 18:11:48 +02:00

211 lines
7.1 KiB
RPMSpec

#
# spec file for package perl-App-Sqitch
#
# Copyright (c) 2025 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 App-Sqitch
Name: perl-App-Sqitch
Version: 1.5.2
Release: 0
License: MIT
Summary: Sensible database change management
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/D/DW/DWHEELER/%{cpan_name}-v%{version}.tar.gz
Source1: cpanspec.yml
Source100: README.md
BuildArch: noarch
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(Algorithm::Backoff::Exponential) >= 0.6.0
BuildRequires: perl(Capture::Tiny) >= 0.120
BuildRequires: perl(Clone)
BuildRequires: perl(Config::GitLike) >= 1.150
BuildRequires: perl(DBD::Mem)
BuildRequires: perl(DBI) >= 1.631
BuildRequires: perl(DateTime) >= 1.40.0
BuildRequires: perl(DateTime::TimeZone)
BuildRequires: perl(Devel::StackTrace) >= 1.300
BuildRequires: perl(Digest::SHA)
BuildRequires: perl(Encode::Locale)
BuildRequires: perl(Hash::Merge)
BuildRequires: perl(IO::Pager) >= 0.340
BuildRequires: perl(IPC::Run3)
BuildRequires: perl(IPC::System::Simple) >= 1.170
BuildRequires: perl(List::MoreUtils)
BuildRequires: perl(Locale::Messages)
BuildRequires: perl(Locale::TextDomain) >= 1.200
BuildRequires: perl(Module::Build) >= 0.35
BuildRequires: perl(Module::Runtime)
BuildRequires: perl(Moo) >= 1.002000
BuildRequires: perl(Moo::Role)
BuildRequires: perl(Path::Class) >= 0.330
BuildRequires: perl(PerlIO::utf8_strict)
BuildRequires: perl(Pod::Escapes) >= 1.04
BuildRequires: perl(Pod::Find)
BuildRequires: perl(StackTrace::Auto)
BuildRequires: perl(String::Formatter)
BuildRequires: perl(String::ShellQuote)
BuildRequires: perl(Sub::Exporter)
BuildRequires: perl(Sub::Exporter::Util)
BuildRequires: perl(Template::Tiny) >= 0.110
BuildRequires: perl(Term::ANSIColor) >= 2.02
BuildRequires: perl(Test::Deep)
BuildRequires: perl(Test::Dir)
BuildRequires: perl(Test::Exception)
BuildRequires: perl(Test::Exit)
BuildRequires: perl(Test::File)
BuildRequires: perl(Test::File::Contents) >= 0.200
BuildRequires: perl(Test::MockModule) >= 0.170
BuildRequires: perl(Test::MockObject::Extends)
BuildRequires: perl(Test::More) >= 0.94
BuildRequires: perl(Test::NoWarnings) >= 0.83.0
BuildRequires: perl(Test::Warn) >= 0.310
BuildRequires: perl(Throwable) >= 0.200.9
BuildRequires: perl(Try::Tiny)
BuildRequires: perl(Type::Library) >= 0.040
BuildRequires: perl(Type::Utils)
BuildRequires: perl(Types::Standard)
BuildRequires: perl(URI)
BuildRequires: perl(URI::QueryParam)
BuildRequires: perl(URI::db) >= 0.200
BuildRequires: perl(namespace::autoclean) >= 0.160
BuildRequires: perl(parent)
Requires: perl(Algorithm::Backoff::Exponential) >= 0.6.0
Requires: perl(Clone)
Requires: perl(Config::GitLike) >= 1.150
Requires: perl(DBI) >= 1.631
Requires: perl(DateTime) >= 1.40.0
Requires: perl(DateTime::TimeZone)
Requires: perl(Devel::StackTrace) >= 1.300
Requires: perl(Digest::SHA)
Requires: perl(Encode::Locale)
Requires: perl(Hash::Merge)
Requires: perl(IO::Pager) >= 0.340
Requires: perl(IPC::Run3)
Requires: perl(IPC::System::Simple) >= 1.170
Requires: perl(List::MoreUtils)
Requires: perl(Locale::Messages)
Requires: perl(Locale::TextDomain) >= 1.200
Requires: perl(Moo) >= 1.002000
Requires: perl(Moo::Role)
Requires: perl(Path::Class) >= 0.330
Requires: perl(PerlIO::utf8_strict)
Requires: perl(Pod::Escapes) >= 1.04
Requires: perl(Pod::Find)
Requires: perl(StackTrace::Auto)
Requires: perl(String::Formatter)
Requires: perl(String::ShellQuote)
Requires: perl(Sub::Exporter)
Requires: perl(Sub::Exporter::Util)
Requires: perl(Template::Tiny) >= 0.110
Requires: perl(Term::ANSIColor) >= 2.02
Requires: perl(Throwable) >= 0.200.9
Requires: perl(Try::Tiny)
Requires: perl(Type::Library) >= 0.040
Requires: perl(Type::Utils)
Requires: perl(Types::Standard)
Requires: perl(URI)
Requires: perl(URI::QueryParam)
Requires: perl(URI::db) >= 0.200
Requires: perl(namespace::autoclean) >= 0.160
Requires: perl(parent)
Recommends: perl(Class::XSAccessor) >= 1.180
Recommends: perl(Pod::Simple) >= 1.41
Recommends: perl(Template)
Recommends: perl(Type::Tiny::XS) >= 0.10.0
%{perl_requires}
# MANUAL BEGIN
BuildRequires: perl(Class::XSAccessor)
BuildRequires: timezone
BuildRequires: perl(Template)
Provides: sqitch
Requires: perl(Class::XSAccessor)
Requires: perl(Template)
# MANUAL END
%description
Sensible database change management
%prep
%autosetup -n %{cpan_name}-v%{version} -p1
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
%build
perl Build.PL --installdirs=vendor
./Build build --flags=%{?_smp_mflags}
%check
./Build test
%install
./Build install --destdir=%{buildroot} --create_packlist=0
%perl_gen_filelist
%files -f %{name}.files
%doc Changes README README.md
%license LICENSE LICENSE.md
%{_prefix}%{_sysconfdir}/sqitch
%package pg
Summary: Sane database change management for PostgreSQL
Group: Development/Libraries/Perl
Requires: postgresql
Requires: sqitch >= %{version}
Requires: perl(DBD::Pg)
Requires: perl(DBI)
%description pg
Sqitch provides a simple yet robust interface for database change
management. The philosophy and functionality is inspired by Git. This
package bundles the Sqitch PostgreSQL support.
%package sqlite
Summary: Sane database change management for SQLite
Group: Development/Libraries/Perl
Requires: sqitch >= %{version}
Requires: sqlite3
Requires: perl(DBD::SQLite) >= 1.31
Requires: perl(DBI)
%description sqlite
Sqitch provides a simple yet robust interface for database change
management. The philosophy and functionality is inspired by Git. This
package bundles the Sqitch SQLite support.
%package mysql
Summary: Sane database change management for MySQL
Group: Development/Libraries/Perl
Requires: mysql
Requires: sqitch >= %{version}
Requires: perl(DBD::mysql)
Requires: perl(DBI)
%description mysql
Sqitch provides a simple yet robust interface for database change
management. The philosophy and functionality is inspired by Git. This
package bundles the Sqitch MySQL support.
%files mysql
# No additional files required.
%files sqlite
# No additional files required.
%files pg
%changelog