2017-08-18 11:22:46 +00:00
|
|
|
# Run optional test
|
|
|
|
%{bcond_without perl_Alien_Build_enables_optional_test}
|
|
|
|
|
|
|
|
Name: perl-Alien-Build
|
2018-06-25 11:19:15 +00:00
|
|
|
Version: 1.46
|
2018-02-26 14:45:29 +00:00
|
|
|
Release: 1%{?dist}
|
2017-08-18 11:22:46 +00:00
|
|
|
Summary: Build external dependencies for use in CPAN
|
|
|
|
License: GPL+ or Artistic
|
2018-06-04 09:42:16 +00:00
|
|
|
URL: https://metacpan.org/release/Alien-Build
|
|
|
|
Source0: https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Build-%{version}.tar.gz
|
2017-09-08 09:51:52 +00:00
|
|
|
# Support only the most advanced pkgconfig implementation,
|
|
|
|
# the files are deleted in prep section
|
2018-06-25 11:19:15 +00:00
|
|
|
Patch0: Alien-Build-1.46-Remove-redundant-pkgconfig-implementations.patch
|
2017-08-18 11:22:46 +00:00
|
|
|
BuildArch: noarch
|
|
|
|
BuildRequires: make
|
|
|
|
BuildRequires: perl-generators
|
|
|
|
BuildRequires: perl-interpreter
|
|
|
|
BuildRequires: perl(:VERSION) >= 5.8.1
|
|
|
|
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
|
|
|
|
BuildRequires: perl(File::Which) >= 1.10
|
|
|
|
BuildRequires: perl(strict)
|
|
|
|
BuildRequires: perl(warnings)
|
|
|
|
# Run-time:
|
2017-08-18 11:49:25 +00:00
|
|
|
%if !%{defined perl_bootstrap}
|
2018-02-21 17:16:03 +00:00
|
|
|
# t/alien_build_plugin_build_cmake.t executes gcc via cmake (bug #923024)
|
|
|
|
BuildRequires: gcc
|
2017-08-18 11:49:25 +00:00
|
|
|
# Build cycle: perl-Alien-cmake3 → perl-Alien-Build
|
|
|
|
BuildRequires: perl(Alien::cmake3) >= 0.02
|
|
|
|
%endif
|
2017-08-18 11:22:46 +00:00
|
|
|
# Archive::Tar or (tar and bzip2 and gzip and xz)
|
|
|
|
BuildRequires: perl(Archive::Tar)
|
|
|
|
# Archive::Zip or unzip
|
|
|
|
BuildRequires: perl(Archive::Zip)
|
|
|
|
BuildRequires: perl(base)
|
|
|
|
BuildRequires: perl(Capture::Tiny) >= 0.17
|
|
|
|
BuildRequires: perl(Carp)
|
|
|
|
BuildRequires: perl(Config)
|
|
|
|
BuildRequires: perl(Config::INI::Reader::Multiline)
|
|
|
|
BuildRequires: perl(constant)
|
|
|
|
BuildRequires: perl(DynaLoader)
|
|
|
|
BuildRequires: perl(Env)
|
|
|
|
BuildRequires: perl(Exporter)
|
|
|
|
BuildRequires: perl(ExtUtils::CBuilder)
|
|
|
|
BuildRequires: perl(ExtUtils::ParseXS) >= 3.30
|
2017-08-18 11:25:24 +00:00
|
|
|
BuildRequires: perl(FFI::CheckLib)
|
2017-08-18 11:22:46 +00:00
|
|
|
# FFI::Platypus is optional and not packaged
|
|
|
|
BuildRequires: perl(File::Basename)
|
|
|
|
BuildRequires: perl(File::BOM)
|
|
|
|
BuildRequires: perl(File::chdir)
|
|
|
|
BuildRequires: perl(File::Copy)
|
|
|
|
BuildRequires: perl(File::Find)
|
|
|
|
BuildRequires: perl(File::Temp)
|
|
|
|
BuildRequires: perl(JSON::PP)
|
|
|
|
BuildRequires: perl(Module::Load)
|
|
|
|
BuildRequires: perl(overload)
|
|
|
|
BuildRequires: perl(Path::Tiny) >= 0.077
|
|
|
|
# Alien::Build::Plugin::PkgConfig::Negotiate finds a pkgconfig implementation
|
|
|
|
# in this order:
|
|
|
|
# PkgConfig::LibPkgConf 0.04, pkgconf, pkg-config, PkgConfig 0.14026
|
|
|
|
# We selected the most advanced PkgConfig::LibPkgConf and removed the other
|
|
|
|
# plugins.
|
|
|
|
BuildRequires: perl(PkgConfig::LibPkgConf::Client) >= 0.04
|
|
|
|
BuildRequires: perl(PkgConfig::LibPkgConf::Util) >= 0.04
|
|
|
|
BuildRequires: perl(Scalar::Util)
|
|
|
|
BuildRequires: perl(Storable)
|
|
|
|
BuildRequires: perl(Test2::API) >= 1.302015
|
|
|
|
BuildRequires: perl(Test2::Require) >= 0.000060
|
|
|
|
BuildRequires: perl(Text::ParseWords) >= 3.26
|
|
|
|
# YAML or Data::Dumper
|
|
|
|
BuildRequires: perl(YAML)
|
|
|
|
# Tests:
|
|
|
|
# AnyEvent not used
|
|
|
|
# AnyEvent::FTP::Server not used
|
|
|
|
BuildRequires: perl(File::Glob)
|
|
|
|
# Getopt::Long not used
|
|
|
|
# IO::Socket::INET not used
|
|
|
|
BuildRequires: perl(lib)
|
|
|
|
BuildRequires: perl(List::Util)
|
|
|
|
# Mojo::JSON not used
|
|
|
|
# Mojo::URL not used
|
|
|
|
# Mojolicious::Lite not used
|
|
|
|
BuildRequires: perl(Net::FTP)
|
|
|
|
# Proc::Daemon not used
|
|
|
|
BuildRequires: perl(Test2::Mock) >= 0.000060
|
|
|
|
BuildRequires: perl(Test2::Require::Module) >= 0.000060
|
|
|
|
BuildRequires: perl(Test2::V0) >= 0.000060
|
|
|
|
# URI not used
|
|
|
|
%if %{with perl_Alien_Build_enables_optional_test}
|
|
|
|
# Optional tests:
|
|
|
|
%if !%{defined perl_bootstrap}
|
|
|
|
# Break build cycle: Acme::Alien::DontPanic → Test::Alien
|
2017-09-26 09:00:15 +00:00
|
|
|
BuildRequires: perl(Acme::Alien::DontPanic) >= 0.026
|
2017-11-29 12:14:49 +00:00
|
|
|
# Break build cycle: perl-Alien-Base-ModuleBuild → perl-Alien-Build
|
2017-09-08 09:51:52 +00:00
|
|
|
BuildRequires: perl(Alien::Base::ModuleBuild) >= 0.040
|
2017-11-29 12:14:49 +00:00
|
|
|
%endif
|
2017-09-08 09:51:52 +00:00
|
|
|
BuildRequires: perl(Devel::Hide)
|
2017-08-18 11:22:46 +00:00
|
|
|
BuildRequires: perl(Env::ShellWords)
|
|
|
|
# FFI::Platypus not packaged
|
2017-09-08 09:51:52 +00:00
|
|
|
BuildRequires: perl(HTTP::Tiny) >= 0.044
|
2017-08-18 11:22:46 +00:00
|
|
|
# PkgConfig not packaged
|
2017-09-19 14:36:52 +00:00
|
|
|
BuildRequires: perl(Readonly) >= 1.60
|
2017-11-06 08:20:21 +00:00
|
|
|
BuildRequires: perl(Sort::Versions)
|
2017-08-18 11:22:46 +00:00
|
|
|
BuildRequires: perl(URI::file)
|
|
|
|
%endif
|
2017-08-18 11:49:25 +00:00
|
|
|
# make in the lib/Alien/Build/Plugin/Build/CMake.pm plugin
|
|
|
|
# make in the lib/Alien/Build/Plugin/Build/Make.pm plugin
|
|
|
|
# make or Alien::gmake
|
|
|
|
BuildRequires: make
|
2017-11-03 12:32:48 +00:00
|
|
|
Suggests: curl
|
2018-02-21 17:16:03 +00:00
|
|
|
# Alien::Base::Wrapper::cc() executes $Config{cc}.
|
|
|
|
Requires: gcc
|
2017-08-18 11:22:46 +00:00
|
|
|
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
2017-08-18 11:49:25 +00:00
|
|
|
%if !%{defined perl_bootstrap}
|
|
|
|
# Build cycle: perl-Alien-cmake3 → perl-Alien-Build
|
|
|
|
Requires: perl(Alien::cmake3) >= 0.02
|
|
|
|
%endif
|
2017-08-18 11:22:46 +00:00
|
|
|
# Archive::Tar or (tar and bzip2 and gzip and xz)
|
|
|
|
Requires: perl(Archive::Tar)
|
|
|
|
# Archive::Zip or unzip
|
|
|
|
Requires: perl(Archive::Zip)
|
|
|
|
Requires: perl(Config::INI::Reader::Multiline)
|
|
|
|
Requires: perl(DynaLoader)
|
|
|
|
Requires: perl(ExtUtils::CBuilder)
|
|
|
|
Requires: perl(ExtUtils::ParseXS) >= 3.30
|
2017-08-18 11:25:24 +00:00
|
|
|
Requires: perl(FFI::CheckLib)
|
2017-08-18 11:22:46 +00:00
|
|
|
Requires: perl(File::BOM)
|
|
|
|
Requires: perl(File::Find)
|
|
|
|
Requires: perl(Path::Tiny) >= 0.077
|
|
|
|
# Alien::Build::Plugin::PkgConfig::Negotiate finds a pkgconfig implementation
|
|
|
|
# in this order:
|
|
|
|
# PkgConfig::LibPkgConf 0.04, pkgconf, pkg-config, PkgConfig 0.14026
|
|
|
|
# We selected the most advanced PkgConfig::LibPkgConf and removed the other
|
|
|
|
# plugins.
|
|
|
|
Requires: perl(PkgConfig::LibPkgConf::Client) >= 0.04
|
|
|
|
Requires: perl(PkgConfig::LibPkgConf::Util) >= 0.04
|
|
|
|
Requires: perl(Storable)
|
|
|
|
Requires: perl(Test2::API) >= 1.302015
|
|
|
|
Requires: perl(Test2::Require) >= 0.000060
|
|
|
|
Requires: perl(Text::ParseWords) >= 3.26
|
|
|
|
# YAML or Data::Dumper
|
|
|
|
Requires: perl(YAML)
|
2017-11-03 12:32:48 +00:00
|
|
|
Suggests: wget
|
2017-11-03 12:45:00 +00:00
|
|
|
# Alien::Base::PkgConfig moved from perl-Alien-Base-ModuleBuild
|
|
|
|
Conflicts: perl-Alien-Base-ModuleBuild < 1.00
|
2017-08-18 11:22:46 +00:00
|
|
|
|
|
|
|
# Do not gather dependencies from the documentation
|
|
|
|
%{?perl_default_filter}
|
|
|
|
|
|
|
|
# Remove underspecified dependencies
|
|
|
|
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\((Capture::Tiny|Path::Tiny|Test2::API|Test2::Require|Text::ParseWords)\\)$
|
|
|
|
|
|
|
|
%description
|
|
|
|
This package provides tools for building external (non-CPAN) dependencies
|
|
|
|
for CPAN. It is mainly designed to be used at install time of a CPAN
|
|
|
|
client, and work closely with Alien::Base which is used at run time.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n Alien-Build-%{version}
|
|
|
|
# Remove redundant pkgconfig implementations, keep
|
2017-09-08 09:51:52 +00:00
|
|
|
# Alien::Build::Plugin::PkgConfig::LibPkgConf,
|
|
|
|
# MANIFEST is updated by Remove-redundant-pkgconfig-implementations.patch
|
|
|
|
%patch0 -p1
|
2017-08-18 11:22:46 +00:00
|
|
|
rm lib/Alien/Build/Plugin/PkgConfig/{CommandLine,PP}.pm
|
|
|
|
rm t/alien_build_plugin_pkgconfig_{commandline,pp}.t
|
|
|
|
|
|
|
|
%build
|
|
|
|
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
|
|
%install
|
|
|
|
make pure_install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
%{_fixperms} $RPM_BUILD_ROOT/*
|
|
|
|
|
|
|
|
%check
|
|
|
|
make test
|
|
|
|
|
|
|
|
%files
|
|
|
|
%license LICENSE
|
|
|
|
%doc Changes* example README SUPPORT
|
|
|
|
%{perl_vendorlib}/*
|
|
|
|
%{_mandir}/man3/*
|
|
|
|
|
|
|
|
%changelog
|
2018-06-25 11:19:15 +00:00
|
|
|
* Mon Jun 25 2018 Petr Pisar <ppisar@redhat.com> - 1.46-1
|
|
|
|
- 1.46 bump
|
|
|
|
|
2018-06-04 09:42:16 +00:00
|
|
|
* Mon Jun 04 2018 Petr Pisar <ppisar@redhat.com> - 1.43-1
|
|
|
|
- 1.43 bump
|
|
|
|
|
2018-05-10 07:56:40 +00:00
|
|
|
* Thu May 10 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1.42-1
|
|
|
|
- 1.42 bump
|
|
|
|
|
2018-04-24 12:37:13 +00:00
|
|
|
* Tue Apr 24 2018 Petr Pisar <ppisar@redhat.com> - 1.41-1
|
|
|
|
- 1.41 bump
|
|
|
|
|
2018-03-12 11:17:24 +00:00
|
|
|
* Mon Mar 12 2018 Petr Pisar <ppisar@redhat.com> - 1.39-1
|
|
|
|
- 1.39 bump
|
|
|
|
|
2018-02-26 14:45:29 +00:00
|
|
|
* Mon Feb 26 2018 Petr Pisar <ppisar@redhat.com> - 1.37-1
|
|
|
|
- 1.37 bump
|
|
|
|
|
2018-02-23 14:07:37 +00:00
|
|
|
* Fri Feb 23 2018 Petr Pisar <ppisar@redhat.com> - 1.36-2
|
|
|
|
- Do not require C++ for build ing C tests (bug #923024)
|
2018-02-21 17:16:03 +00:00
|
|
|
- Build-require gcc because it is executed by tests via cmake (bug #923024)
|
|
|
|
- Run-requires gcc for Alien::Base::Wrapper::cc()
|
2018-02-23 14:07:37 +00:00
|
|
|
|
2018-02-06 07:59:20 +00:00
|
|
|
* Tue Feb 06 2018 Petr Pisar <ppisar@redhat.com> - 1.36-1
|
|
|
|
- 1.36 bump
|
|
|
|
|
2017-11-06 08:20:21 +00:00
|
|
|
* Mon Nov 06 2017 Petr Pisar <ppisar@redhat.com> - 1.32-1
|
|
|
|
- 1.32 bump
|
|
|
|
|
2017-11-03 12:45:00 +00:00
|
|
|
* Fri Nov 03 2017 Petr Pisar <ppisar@redhat.com> - 1.28-2
|
|
|
|
- Conflict with perl-Alien-Base-ModuleBuild < 1.00 because of
|
|
|
|
Alien::Base::PkgConfig
|
|
|
|
|
2017-11-03 12:32:48 +00:00
|
|
|
* Fri Nov 03 2017 Petr Pisar <ppisar@redhat.com> - 1.28-1
|
|
|
|
- 1.28 bump
|
|
|
|
|
2017-09-26 09:00:15 +00:00
|
|
|
* Tue Sep 26 2017 Petr Pisar <ppisar@redhat.com> - 1.18-1
|
|
|
|
- 1.18 bump
|
|
|
|
|
2017-09-19 14:36:52 +00:00
|
|
|
* Tue Sep 19 2017 Petr Pisar <ppisar@redhat.com> - 1.16-1
|
|
|
|
- 1.16 bump
|
|
|
|
|
2017-09-08 09:51:52 +00:00
|
|
|
* Fri Sep 08 2017 Petr Pisar <ppisar@redhat.com> - 1.10-1
|
|
|
|
- 1.10 bump
|
|
|
|
|
2017-08-29 06:22:57 +00:00
|
|
|
* Tue Aug 29 2017 Petr Pisar <ppisar@redhat.com> - 1.05-1
|
|
|
|
- 1.05 bump
|
|
|
|
|
2017-08-28 13:26:27 +00:00
|
|
|
* Mon Aug 28 2017 Petr Pisar <ppisar@redhat.com> - 1.04-1
|
|
|
|
- 1.04 bump
|
|
|
|
|
2017-08-18 11:49:25 +00:00
|
|
|
* Fri Aug 18 2017 Petr Pisar <ppisar@redhat.com> - 0.99-1
|
|
|
|
- 0.99 bump
|
|
|
|
|
2017-08-18 11:22:46 +00:00
|
|
|
* Thu Aug 17 2017 Petr Pisar <ppisar@redhat.com> 0.95-1
|
|
|
|
- Specfile autogenerated by cpanspec 1.78.
|