Compare commits

...

35 Commits

Author SHA1 Message Date
David Abdurachmanov 5d05369f3b
Bootstrap on riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2022-09-09 10:01:50 +03:00
Petr Písař ae8cec92a5 2.68 bump 2022-09-06 10:39:56 +02:00
Petr Písař 26851942f2 2.67 bump 2022-09-05 12:02:15 +02:00
Petr Písař 267f7d3c43 2.65 bump 2022-08-31 14:53:42 +02:00
Petr Písař 8b7af6d9cb 2.59 bump 2022-08-17 10:31:18 +02:00
Petr Písař 469bfe42f3 2.51 bump 2022-08-04 09:44:49 +02:00
Fedora Release Engineering bec0cf76ac Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 03:05:03 +00:00
Petr Písař ebe5bb19e2 2.50 bump 2022-06-24 09:15:23 +02:00
Jitka Plesnikova ff35656f45 Perl 5.36 re-rebuild of bootstrapped packages 2022-06-03 13:29:04 +02:00
Jitka Plesnikova 1b0c92540a Perl 5.36 rebuild 2022-06-01 11:02:26 +02:00
Petr Písař 745fd3d991 2.48 bump 2022-03-15 16:04:43 +01:00
Petr Písař 63732d0b63 Move Alien::Base and Alien::Base::PkgConfig to perl-Alien-Base 2022-03-15 15:00:43 +01:00
Petr Písař 68b843b2de 2.47 bump 2022-03-07 17:06:33 +01:00
Fedora Release Engineering d3d557f472 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 23:15:20 +00:00
Jitka Plesnikova ba75ebd092 2.46 bump 2021-12-02 13:40:37 +01:00
Petr Písař 7453acb581 2.45 bump 2021-10-29 11:27:29 +02:00
Petr Písař 5194749239 2.44 bump 2021-10-21 13:30:25 +02:00
Petr Písař 3ec2b6002c Symlink duplicate files 2021-09-30 13:06:57 +02:00
Petr Písař 1c808be7d4 2.42 bump 2021-09-30 11:14:37 +02:00
Fedora Release Engineering 72e0c6783b - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 18:01:47 +00:00
Petr Písař 0b83930e64 2.41 bump 2021-06-22 14:33:36 +02:00
Jitka Plesnikova b807843102 Perl 5.34 re-rebuild of bootstrapped packages 2021-05-24 09:58:48 +02:00
Jitka Plesnikova fdf38fc7cc Perl 5.34 rebuild 2021-05-21 12:31:03 +02:00
Petr Písař 4b75d28dd0 Add FMF tests and gating 2021-05-13 19:03:39 +02:00
Petr Písař 93c31ec501 Package the tests 2021-05-13 18:58:19 +02:00
Petr Písař deac6d181e 2.40 bump 2021-05-13 16:31:52 +02:00
Fedora Release Engineering a0168f5e53 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 23:15:14 +00:00
Petr Písař 294d72daac Test-Alien merged into Alien-Build 2021-01-12 13:56:32 +01:00
Petr Písař ec51f1dbbe 2.38 bump 2021-01-12 09:11:08 +01:00
Petr Písař 2a1b1bf186 2.37 bump 2020-11-03 15:00:28 +01:00
Petr Písař 315d027dd5 2.33 bump 2020-09-21 16:52:59 +02:00
Petr Písař 4d302ca863 2.32 bump 2020-09-14 12:23:38 +02:00
Petr Písař 1fdae8f66a 2.29 bump 2020-08-11 07:09:57 +02:00
Petr Písař 80062c6b6a 2.28 bump 2020-08-05 09:49:41 +02:00
Fedora Release Engineering 843fcad5c3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 13:28:41 +00:00
10 changed files with 447 additions and 64 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

20
.gitignore vendored
View File

@ -54,3 +54,23 @@
/Alien-Build-2.22.tar.gz
/Alien-Build-2.23.tar.gz
/Alien-Build-2.26.tar.gz
/Alien-Build-2.28.tar.gz
/Alien-Build-2.29.tar.gz
/Alien-Build-2.32.tar.gz
/Alien-Build-2.33.tar.gz
/Alien-Build-2.37.tar.gz
/Alien-Build-2.38.tar.gz
/Alien-Build-2.40.tar.gz
/Alien-Build-2.41.tar.gz
/Alien-Build-2.42.tar.gz
/Alien-Build-2.44.tar.gz
/Alien-Build-2.45.tar.gz
/Alien-Build-2.46.tar.gz
/Alien-Build-2.47.tar.gz
/Alien-Build-2.48.tar.gz
/Alien-Build-2.50.tar.gz
/Alien-Build-2.51.tar.gz
/Alien-Build-2.59.tar.gz
/Alien-Build-2.65.tar.gz
/Alien-Build-2.67.tar.gz
/Alien-Build-2.68.tar.gz

View File

@ -0,0 +1,73 @@
From c2106ae1cda2da737f3a4202fc68fe9b758b6ee1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Wed, 17 Aug 2022 10:18:36 +0200
Subject: [PATCH] Remove redundant SHA implementations
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We keep Alien::Build::Plugin::Digest::SHA as it is based on
Digest::SHA.
Alien::Build::Plugin::Digest::SHAPP is removed because it
requires Digest::SHA::PurePerl which is not packaged.
Files are moved externally because of ever changing VERSION variables.
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
MANIFEST | 2 --
Makefile.PL | 1 -
lib/Alien/Build/Plugin/Digest.pod | 4 ----
3 files changed, 7 deletions(-)
diff --git a/MANIFEST b/MANIFEST
index b9335ad..fc1eea9 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -223,7 +223,6 @@ lib/Alien/Build/Plugin/Decode/Mojo.pm
lib/Alien/Build/Plugin/Digest.pod
lib/Alien/Build/Plugin/Digest/Negotiate.pm
lib/Alien/Build/Plugin/Digest/SHA.pm
-lib/Alien/Build/Plugin/Digest/SHAPP.pm
lib/Alien/Build/Plugin/Download.pod
lib/Alien/Build/Plugin/Download/Negotiate.pm
lib/Alien/Build/Plugin/Extract.pod
@@ -317,7 +316,6 @@ t/alien_build_plugin_decode_html.t
t/alien_build_plugin_decode_mojo.t
t/alien_build_plugin_digest_negotiate.t
t/alien_build_plugin_digest_sha.t
-t/alien_build_plugin_digest_shapp.t
t/alien_build_plugin_download_negotiate.t
t/alien_build_plugin_extract_archivetar.t
t/alien_build_plugin_extract_archivezip.t
diff --git a/Makefile.PL b/Makefile.PL
index 4c4c147..42f773f 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -75,7 +75,6 @@ my %WriteMakefileArgs = (
"lib/Alien/Build/Plugin/Digest.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Digest.pod",
"lib/Alien/Build/Plugin/Digest/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Digest/Negotiate.pm",
"lib/Alien/Build/Plugin/Digest/SHA.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Digest/SHA.pm",
- "lib/Alien/Build/Plugin/Digest/SHAPP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Digest/SHAPP.pm",
"lib/Alien/Build/Plugin/Download.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Download.pod",
"lib/Alien/Build/Plugin/Download/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Download/Negotiate.pm",
"lib/Alien/Build/Plugin/Extract.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Extract.pod",
diff --git a/lib/Alien/Build/Plugin/Digest.pod b/lib/Alien/Build/Plugin/Digest.pod
index ef3b471..a1844f2 100644
--- a/lib/Alien/Build/Plugin/Digest.pod
+++ b/lib/Alien/Build/Plugin/Digest.pod
@@ -42,10 +42,6 @@ Negotiate the most appropriate plugin to calculate digest.
Use the XS based L<Digest::SHA> for computing SHA digests. This is the default since
L<Digest::SHA> comes with recent versions of Perl.
-=item L<Alien::Build::Plugin::Digest::SHAPP>
-
-Use the pure-perl based L<Digest::SHA::PurePerl> for computing SHA digests.
-
=back
=head1 SEE ALSO
--
2.37.2

View File

@ -1,4 +1,4 @@
From 0cb918b9a9b9080c61556c0e6a167855ca9c7f48 Mon Sep 17 00:00:00 2001
From 343c582db332d07f831420372ef8eab1eead0718 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Fri, 8 Sep 2017 11:31:02 +0200
Subject: [PATCH] Remove redundant pkgconfig implementations
@ -21,13 +21,13 @@ Signed-off-by: Petr Písař <ppisar@redhat.com>
6 files changed, 11 insertions(+), 204 deletions(-)
diff --git a/MANIFEST b/MANIFEST
index 23f181a..eb81c8b 100644
index 6f507b0..b9335ad 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -177,11 +177,9 @@ lib/Alien/Build/Plugin/Fetch/LocalDir.pm
lib/Alien/Build/Plugin/Fetch/NetFTP.pm
lib/Alien/Build/Plugin/Fetch/Wget.pm
@@ -243,11 +243,9 @@ lib/Alien/Build/Plugin/Fetch/Wget.pm
lib/Alien/Build/Plugin/Gather.pod
lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm
lib/Alien/Build/Plugin/PkgConfig.pod
-lib/Alien/Build/Plugin/PkgConfig/CommandLine.pm
lib/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm
lib/Alien/Build/Plugin/PkgConfig/MakeStatic.pm
@ -36,7 +36,7 @@ index 23f181a..eb81c8b 100644
lib/Alien/Build/Plugin/Prefer.pod
lib/Alien/Build/Plugin/Prefer/BadVersion.pm
lib/Alien/Build/Plugin/Prefer/GoodVersion.pm
@@ -265,12 +263,10 @@ t/alien_build_plugin_fetch_netftp.t
@@ -336,12 +334,10 @@ t/alien_build_plugin_fetch_netftp.t
t/alien_build_plugin_fetch_wget.t
t/alien_build_plugin_gather_isolatedynamic.t
t/alien_build_plugin_meta.t
@ -50,13 +50,13 @@ index 23f181a..eb81c8b 100644
t/alien_build_plugin_prefer_goodversion.t
t/alien_build_plugin_prefer_sortversions.t
diff --git a/Makefile.PL b/Makefile.PL
index 63b5258..7c79e1a 100644
index 27b442e..4c4c147 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -86,11 +86,9 @@ my %WriteMakefileArgs = (
"lib/Alien/Build/Plugin/Fetch/NetFTP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/NetFTP.pm",
"lib/Alien/Build/Plugin/Fetch/Wget.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/Wget.pm",
@@ -95,11 +95,9 @@ my %WriteMakefileArgs = (
"lib/Alien/Build/Plugin/Gather.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Gather.pod",
"lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Gather/IsolateDynamic.pm",
"lib/Alien/Build/Plugin/PkgConfig.pod" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig.pod",
- "lib/Alien/Build/Plugin/PkgConfig/CommandLine.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/CommandLine.pm",
"lib/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm",
"lib/Alien/Build/Plugin/PkgConfig/MakeStatic.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/MakeStatic.pm",
@ -65,7 +65,7 @@ index 63b5258..7c79e1a 100644
"lib/Alien/Build/Plugin/Prefer.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer.pod",
"lib/Alien/Build/Plugin/Prefer/BadVersion.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer/BadVersion.pm",
"lib/Alien/Build/Plugin/Prefer/GoodVersion.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer/GoodVersion.pm",
@@ -197,4 +195,4 @@ sub requires { goto &runtime_requires }
@@ -218,4 +216,4 @@ sub requires { goto &runtime_requires }
sub runtime_requires {
my ( $module, $version_or_range ) = @_;
_add_prereq( PREREQ_PM => $module, $version_or_range );
@ -73,12 +73,12 @@ index 63b5258..7c79e1a 100644
\ No newline at end of file
+}
diff --git a/lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm b/lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm
index 56fe5a6..aff683c 100644
index fd4cb62..de10c7c 100644
--- a/lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm
+++ b/lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm
@@ -3,9 +3,7 @@ package Alien::Build::Plugin::PkgConfig::Negotiate;
use strict;
@@ -4,9 +4,7 @@ use strict;
use warnings;
use 5.008004;
use Alien::Build::Plugin;
-use Alien::Build::Plugin::PkgConfig::PP;
use Alien::Build::Plugin::PkgConfig::LibPkgConf;
@ -86,7 +86,7 @@ index 56fe5a6..aff683c 100644
use Alien::Build::Util qw( _perl_config );
use Carp ();
@@ -41,27 +39,6 @@ sub pick
@@ -42,27 +40,6 @@ sub pick
return 'PkgConfig::LibPkgConf';
}
@ -114,7 +114,7 @@ index 56fe5a6..aff683c 100644
else
{
# this is a fata error. because we check for a pkg-config implementation
@@ -69,7 +46,7 @@ sub pick
@@ -70,7 +47,7 @@ sub pick
# fallback on installing PkgConfig.pm as a prereq if nothing else is avail).
# we therefore expect at least one of these to work, if not, then the configuration
# of the system has shifted from underneath us.
@ -124,10 +124,10 @@ index 56fe5a6..aff683c 100644
}
diff --git a/t/01_use.t b/t/01_use.t
index 2c7845d..8a43feb 100644
index 0275da2..46875d0 100644
--- a/t/01_use.t
+++ b/t/01_use.t
@@ -45,11 +45,9 @@ require_ok 'Alien::Build::Plugin::Fetch::LocalDir';
@@ -46,11 +46,9 @@ require_ok 'Alien::Build::Plugin::Fetch::LocalDir';
require_ok 'Alien::Build::Plugin::Fetch::NetFTP';
require_ok 'Alien::Build::Plugin::Fetch::Wget';
require_ok 'Alien::Build::Plugin::Gather::IsolateDynamic';
@ -139,7 +139,7 @@ index 2c7845d..8a43feb 100644
require_ok 'Alien::Build::Plugin::Prefer::BadVersion';
require_ok 'Alien::Build::Plugin::Prefer::GoodVersion';
require_ok 'Alien::Build::Plugin::Prefer::SortVersions';
@@ -111,11 +109,9 @@ ok -f 't/alien_build_plugin_fetch_localdir.t', 'test for Alien::B
@@ -116,11 +114,9 @@ ok -f 't/alien_build_plugin_fetch_localdir.t', 'test for Alien::B
ok -f 't/alien_build_plugin_fetch_netftp.t', 'test for Alien::Build::Plugin::Fetch::NetFTP';
ok -f 't/alien_build_plugin_fetch_wget.t', 'test for Alien::Build::Plugin::Fetch::Wget';
ok -f 't/alien_build_plugin_gather_isolatedynamic.t', 'test for Alien::Build::Plugin::Gather::IsolateDynamic';
@ -152,10 +152,10 @@ index 2c7845d..8a43feb 100644
ok -f 't/alien_build_plugin_prefer_goodversion.t', 'test for Alien::Build::Plugin::Prefer::GoodVersion';
ok -f 't/alien_build_plugin_prefer_sortversions.t', 'test for Alien::Build::Plugin::Prefer::SortVersions';
diff --git a/t/alien_build_plugin_pkgconfig_negotiate.t b/t/alien_build_plugin_pkgconfig_negotiate.t
index 8ac54b2..981f88c 100644
index 1c2c71d..071a7b0 100644
--- a/t/alien_build_plugin_pkgconfig_negotiate.t
+++ b/t/alien_build_plugin_pkgconfig_negotiate.t
@@ -15,7 +15,7 @@ subtest 'pick' => sub {
@@ -16,7 +16,7 @@ subtest 'pick' => sub {
subtest 'override' => sub {
@ -165,10 +165,10 @@ index 8ac54b2..981f88c 100644
local $ENV{ALIEN_BUILD_PKG_CONFIG} = "PkgConfig::$name";
subtest $ENV{ALIEN_BUILD_PKG_CONFIG} => sub {
diff --git a/t/alien_build_plugin_pkgconfig_negotiate__pick.t b/t/alien_build_plugin_pkgconfig_negotiate__pick.t
index 148b794..947c05d 100644
index 9862014..54fb83d 100644
--- a/t/alien_build_plugin_pkgconfig_negotiate__pick.t
+++ b/t/alien_build_plugin_pkgconfig_negotiate__pick.t
@@ -24,9 +24,10 @@ subtest 'LibPkgConf' => sub {
@@ -27,9 +27,10 @@ subtest 'LibPkgConf' => sub {
local $PkgConfig::LibPkgConf::VERSION = '0.01';
@ -182,7 +182,7 @@ index 148b794..947c05d 100644
);
};
@@ -39,9 +40,10 @@ subtest 'LibPkgConf' => sub {
@@ -42,9 +43,10 @@ subtest 'LibPkgConf' => sub {
# cannot be loaded for the rest of this .t file
note scalar capture_merged { Devel::Hide->import(qw( PkgConfig::LibPkgConf )) };
@ -196,7 +196,7 @@ index 148b794..947c05d 100644
);
};
@@ -54,167 +56,5 @@ my $make_pkgconfig_libpkgconf_unavailable = mock 'Alien::Build::Plugin::PkgConfi
@@ -57,167 +59,5 @@ my $make_pkgconfig_libpkgconf_unavailable = mock 'Alien::Build::Plugin::PkgConfi
],
);
@ -365,5 +365,5 @@ index 148b794..947c05d 100644
done_testing;
--
2.21.1
2.37.2

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}

View File

@ -0,0 +1,5 @@
addFilter('-tests\.noarch: E: invalid-pkgconfig-file /usr/libexec/')
addFilter('-tests\.noarch: E: zero-length /usr/libexec/')
addFilter('-tests\.noarch: W: devel-file-in-non-devel-package')
addFilter('-tests\.noarch: W: hidden-file-or-dir /usr/libexec/')
addFilter('-tests\.noarch: W: no-documentation')

View File

@ -7,26 +7,30 @@
%endif
Name: perl-Alien-Build
Version: 2.26
Release: 3%{?dist}
Version: 2.68
Release: 1.0.riscv64%{?dist}
Summary: Build external dependencies for use in CPAN
# lib/Alien/Build/Plugin/Test/Mock.pm contains Base64-encoded files for tests
# (a bash script, C source file, a gzipped tar archive, Mach-O 64-bit x86_64
# object file and a static library).
License: GPL+ or Artistic
License: GPL-1.0-or-later OR Artistic-1.0-Perl
URL: https://metacpan.org/release/Alien-Build
Source0: https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Build-%{version}.tar.gz
# Support only the most advanced pkgconfig implementation,
# the files are deleted in prep section
Patch0: Alien-Build-1.96-Remove-redundant-pkgconfig-implementations.patch
Patch0: Alien-Build-2.65-Remove-redundant-pkgconfig-implementations.patch
# Support only the most commog SHA implementation,
# the files are deleted in prep section
Patch1: Alien-Build-2.65-Remove-redundant-SHA-implementations.patch
BuildArch: noarch
BuildRequires: coreutils
BuildRequires: make
# Makefile.PL executes ./inc/probebad.pl that executes XS checks
BuildRequires: gcc
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: perl-interpreter
BuildRequires: perl(:VERSION) >= 5.8.1
BuildRequires: perl(:VERSION) >= 5.8.4
BuildRequires: perl(Config)
BuildRequires: perl(ExtUtils::CBuilder)
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
@ -37,8 +41,6 @@ BuildRequires: perl(File::Which) >= 1.10
BuildRequires: perl(strict)
BuildRequires: perl(warnings)
# Run-time:
# Alien::Build::Plugin::Build::Copy executes cp
BuildRequires: coreutils
%if !%{defined perl_bootstrap}
# t/alien_build_plugin_build_cmake.t executes gcc via cmake (bug #923024)
# Build cycle: perl-Alien-cmake3 → perl-Alien-Build
@ -48,11 +50,12 @@ BuildRequires: perl(Alien::cmake3) >= 0.02
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::INI::Reader::Multiline)
BuildRequires: perl(constant)
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(Digest::SHA)
BuildRequires: perl(DynaLoader)
BuildRequires: perl(Env)
BuildRequires: perl(Exporter)
@ -65,8 +68,9 @@ BuildRequires: perl(File::chdir)
BuildRequires: perl(File::Copy)
BuildRequires: perl(File::Find)
BuildRequires: perl(JSON::PP)
# List::Util 1.33 not used at tests
BuildRequires: perl(List::Util) >= 1.33
BuildRequires: perl(overload)
BuildRequires: perl(parent)
BuildRequires: perl(Path::Tiny) >= 0.077
# Alien::Build::Plugin::PkgConfig::Negotiate finds a pkgconfig implementation
# in this order:
@ -89,19 +93,19 @@ BuildRequires: perl(FFI::Platypus) >= 0.12
# Tests:
# AnyEvent not used
# AnyEvent::FTP::Server not used
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(File::Glob)
# Getopt::Long not used
# IO::Socket::INET not used
# HTTP::Server::PSGI not used
BuildRequires: perl(lib)
BuildRequires: perl(List::Util) >= 1.33
# Mojo::JSON not used
# Mojo::URL not used
# Mojolicious::Lite not used
BuildRequires: perl(Net::FTP)
# Plack::App::Directory not used
# Plack::Builder not used
# Proc::Daemon not used
BuildRequires: perl(Test2::V0) >= 0.000060
BuildRequires: perl(Test2::V0) >= 0.000121
# URI not used
# URI::Escape not used
BuildRequires: perl(utf8)
%if %{with perl_Alien_Build_enables_optional_test}
# Optional tests:
@ -113,12 +117,13 @@ BuildRequires: perl(Alien::Base::ModuleBuild) >= 0.040
%endif
BuildRequires: perl(Devel::Hide)
BuildRequires: perl(Env::ShellWords)
# FFI::Platypus not packaged
# HTTP::Tiny or curl
# (HTTP::Tiny and Mozilla::CA) or curl
BuildRequires: perl(HTTP::Tiny) >= 0.044
# Prefer Mojo::DOM with Mojolicious, URI, URI::Escape over Mojo::DOM58
BuildRequires: perl(Mojo::DOM)
BuildRequires: perl(Mojolicious) >= 7.00
# (HTTP::Tiny and Mozilla::CA) or curl
# Mozilla::CA not used
# PkgConfig not packaged
BuildRequires: perl(Readonly) >= 1.60
BuildRequires: perl(Sort::Versions)
@ -126,15 +131,17 @@ BuildRequires: perl(URI)
BuildRequires: perl(URI::Escape)
BuildRequires: perl(URI::file)
%endif
# Alien::Build::Plugin::Build::Copy executes cp
Requires: coreutils
# Alien::Base::Wrapper::cc() executes $Config{cc}.
Requires: gcc
# 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
# Alien::Build::Plugin::Build::Copy executes cp
Requires: coreutils
Suggests: curl
# Alien::Base::Wrapper::cc() executes $Config{cc}.
Requires: gcc
Requires: make
# A subset of Alien-Build modules is packaged in perl-Alien-Base to minimize
# dependencies.
Requires: perl-Alien-Base = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
%if !%{defined perl_bootstrap}
# Build cycle: perl-Alien-cmake3 → perl-Alien-Build
@ -149,16 +156,19 @@ 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::MakeMaker) >= 6.52
Requires: perl(ExtUtils::ParseXS) >= 3.30
Requires: perl(FFI::CheckLib)
%if %{with perl_Alien_Build_enables_platypus}
Recommends: perl(FFI::Platypus) >= 0.12
%endif
Requires: perl(Capture::Tiny) >= 0.17
Requires: perl(File::BOM)
Requires: perl(File::Find)
# (HTTP::Tiny and Mozilla::CA) or curl for Alien::Build::Plugin::Download::Negotiate
Requires: perl(HTTP::Tiny) >= 0.044
# (HTTP::Tiny and Mozilla::CA) or curl for Alien::Build::Plugin::Download::Negotiate
Requires: perl(Mozilla::CA)
Requires: perl(Path::Tiny) >= 0.077
# Alien::Build::Plugin::PkgConfig::Negotiate finds a pkgconfig implementation
# in this order:
@ -171,24 +181,53 @@ Requires: perl(Storable)
Requires: perl(Test2::API) >= 1.302096
Requires: perl(Text::ParseWords) >= 3.26
# YAML or Data::Dumper
Requires: perl(YAML)
Suggests: wget
# Alien::Base::PkgConfig moved from perl-Alien-Base-ModuleBuild
Conflicts: perl-Alien-Base-ModuleBuild < 1.00
Recommends: perl(YAML)
# Test-Alien merged into Alien-Build
Obsoletes: perl-Test-Alien < 0.15-13
Provides: perl-Test-Alien = %{version}-%{release}
# 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|Text::ParseWords)\\)$
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\((Capture::Tiny|Path::Tiny|Test2::API|Test2::V0|Text::ParseWords)\\)$
# Remove private redefinitions
%global __provides_exclude %{?__provides_exclude:%{__provides_exclude}|}^perl\\(Alien::Build::rc\\)$
# Remove private modules
%global __provides_exclude %{__provides_exclude}|^perl\\(Alien::Build::Plugin::NesAdvantage::HelperTest|Alien::perlhelp|MyTest::.*\\)$
%global __requires_exclude %{__requires_exclude}|^perl\\(Alien::Build::Plugin::RogerRamjet|Alien::Foo|Alien::libfoo1|Alien::libfoo2|Alien::perlhelp|MyTest::.*\\)$
# Some tests, e.g. t/alien_build_plugin_extract_negotiate.t, compare a script file
# content against an archived one. Do not rewrite their shebangs.
%global __brp_mangle_shebangs_exclude_from %{?__brp_mangle_shebangs_exclude_from:%{__brp_mangle_shebangs_exclude_from}|}^%{_libexecdir}/%{name}/corpus/dist/foo-1\.00/configure$
%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.
%package -n perl-Alien-Base
Summary: Base classes for Alien:: modules
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
Requires: perl(DynaLoader)
Requires: perl(FFI::CheckLib)
Requires: perl(File::Find)
Requires: perl(JSON::PP)
Requires: perl(Path::Tiny) >= 0.077
Requires: perl(Storable)
Requires: perl(Text::ParseWords) >= 3.26
# pkgconf-pkg-config for pkg-config tool executed by
# Alien::Base::PkgConfig::pkg_config_command()
Requires: pkgconf-pkg-config
# Alien::Base::PkgConfig moved from perl-Alien-Base-ModuleBuild
Conflicts: perl-Alien-Base-ModuleBuild < 1.00
# Subpackaged from perl-Alien-Build-2.47-1
Conflicts: perl-Alien-Build < 2.47-2
%description -n perl-Alien-Base
Alien::Base comprises base classes to help in the construction of
"Alien::" modules.
%package Plugin-Decode-HTML
Summary: Alien::Build plugin to extract links from HTML
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
@ -218,14 +257,97 @@ Requires: perl(URI::Escape)
This Alien::Build plugin decodes an HTML file listing into a list of
candidates for your Prefer plugin.
%package tests
Summary: Tests for %{name}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: coreutils
Requires: perl-Test-Harness
Requires: perl(Net::FTP)
Requires: perl(Test2::V0) >= 0.000121
%if %{with perl_Alien_Build_enables_optional_test}
%if !%{defined perl_bootstrap}
# Break build cycle: Acme::Alien::DontPanic → Test::Alien
Requires: perl(Acme::Alien::DontPanic) >= 0.026
# Break build cycle: perl-Alien-Base-ModuleBuild → perl-Alien-Build
Requires: perl(Alien::Base::ModuleBuild) >= 0.040
%endif
Requires: perl(Devel::Hide)
Requires: perl(Env::ShellWords)
# FFI::Platypus not packaged
# (HTTP::Tiny and Mozilla::CA) or curl
Requires: perl(HTTP::Tiny) >= 0.044
# Prefer Mojo::DOM with Mojolicious, URI, URI::Escape over Mojo::DOM58
Requires: perl(Mojo::DOM)
Requires: perl(Mojolicious) >= 7.00
# (HTTP::Tiny and Mozilla::CA) or curl
# Mozilla::CA not used
# PkgConfig not packaged
Requires: perl(Readonly) >= 1.60
Requires: perl(Sort::Versions)
Requires: perl(URI::file)
%endif
%description tests
Tests from %{name}. Execute them
with "%{_libexecdir}/%{name}/test".
%prep
%setup -q -n Alien-Build-%{version}
# Remove redundant pkgconfig implementations, keep
# Alien::Build::Plugin::PkgConfig::LibPkgConf,
# MANIFEST is updated by Remove-redundant-pkgconfig-implementations.patch
# MANIFEST is updated by Remove-redundant-pkgconfig-implementations.patch.
%patch0 -p1
rm lib/Alien/Build/Plugin/PkgConfig/{CommandLine,PP}.pm
rm t/alien_build_plugin_pkgconfig_{commandline,pp}.t
# Remove redundant SHA digest imlementations, keep
# Alien::Build::Plugin::Digest::SHA, MANIFEST is updated by
# Alien-Build-2.59-Remove-redundant-SHA-implementations.patch.
%patch1 -p1
rm lib/Alien/Build/Plugin/Digest/SHAPP.pm
rm t/alien_build_plugin_digest_shapp.t
# Remove unused tests
for F in \
t/bin/ftpd \
t/bin/httpd \
%if !%{with perl_Alien_Build_enables_optional_test} || %{defined perl_bootstrap}
t/alien_base__system_installed.t \
%endif
%if !%{with perl_Alien_Build_enables_optional_test}
t/alien_build_plugin_build_searchdep.t \
t/alien_build_plugin_extract_commandline__tar_can.t \
t/alien_build_plugin_prefer_badversion.t \
t/alien_build_plugin_prefer_goodversion.t \
%endif
; do
rm "$F"
perl -i -ne 'print $_ unless m{\A\Q'"$F"'\E\b}' MANIFEST
perl -i -ne 'print $_ unless m{\b\Q'"$F"'\E\b}' t/01_use.t
done
# Symlink identical files
function symlink_duplicates {
local KEEP="$1"
local DUPLICATE_GLOB="$2"
local F
shopt -s globstar
for F in $DUPLICATE_GLOB; do
test "$KEEP" = "$F" && continue
cmp "$KEEP" "$F" || continue
rm "$F"
ln -s "$(realpath --relative-to $(dirname $F) $KEEP)" "$F"
done
}
symlink_duplicates 'corpus/alien_build_plugin_fetch_curlcommand/dir/foo-1.00.tar' 'corpus/*/dir/foo-1.00.tar'
symlink_duplicates 'corpus/alien_build_plugin_fetch_curlcommand/dir/foo-1.01.tar' 'corpus/*/dir/foo-1.01.tar'
symlink_duplicates 'corpus/alien_build_plugin_fetch_curlcommand/dir/foo-1.02.tar' 'corpus/*/dir/foo-1.02.tar'
symlink_duplicates 'corpus/alien_build_plugin_fetch_curlcommand/dir/html_test.html' 'corpus/*/dir/html_test.html'
symlink_duplicates 'example/user/ffi-platypus/t/lzma_example.t' 'example/user/*/t/lzma_example.t'
symlink_duplicates 'example/user/xs-dzil/Example.xs' 'example/**/Example.xs'
symlink_duplicates 'example/user/xs-dzil/lib/LZMA/Example.pm' 'example/**/Example.pm'
# Help generators to recognize Perl scripts
for F in t/*.t; do
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!\s*perl}{$Config{startperl}}' "$F"
chmod +x "$F"
done
%build
unset PKG_CONFIG
@ -234,26 +356,72 @@ perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1
%install
%{make_install}
%{_fixperms} $RPM_BUILD_ROOT/*
%{_fixperms} %{buildroot}/*
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a corpus t %{buildroot}%{_libexecdir}/%{name}
# t/alienfile.t uses example/*.alienfile
mkdir %{buildroot}%{_libexecdir}/%{name}/example
cp -a example/*.alienfile %{buildroot}%{_libexecdir}/%{name}/example
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/bash
set -e
# Many tests, e.g. t/alien_build_commandsequence.t, write into CWD
DIR=$(mktemp -d)
cp -a %{_libexecdir}/%{name}/* "$DIR"
pushd "$DIR"
unset ACLOCAL_PATH ALIEN_BASE_WRAPPER_QUIET ALIEN_BUILD_LIVE_TEST \
ALIEN_BUILD_LOG ALIEN_BUILD_PKG_CONFIG ALIEN_BUILD_POSTLOAD \
ALIEN_BUILD_PRELOAD ALIEN_BUILD_RC ALIEN_BUILD_SITE_CONFIG \
ALIEN_DOWNLOAD_RULE ALIEN_FORCE \
ALIEN_INSTALL_NETWORK ALIEN_INSTALL_TYPE CONFIG_SITE CURL DESTDIR \
FOO1 FOO2 FOO3 TEST_ALIEN_ALIENS_MISSING TEST_ALIEN_ALWAYS_KEEP VERBOSE WGET
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
popd
rm -r "$DIR"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
%check
unset ACLOCAL_PATH ALIEN_BASE_WRAPPER_QUIET ALIEN_BUILD_LIVE_TEST \
ALIEN_BUILD_LOG ALIEN_BUILD_PKG_CONFIG ALIEN_BUILD_POSTLOAD \
ALIEN_BUILD_PRELOAD ALIEN_BUILD_RC ALIEN_BUILD_SITE_CONFIG ALIEN_FORCE \
ALIEN_INSTALL_NETWORK ALIEN_INSTALL_TYPE CIPDIST CONFIG_SITE CURL DESTDIR \
FOO1 FOO2 FOO3 VERBOSE WGET
ALIEN_BUILD_PRELOAD ALIEN_BUILD_RC ALIEN_BUILD_SITE_CONFIG \
ALIEN_DOWNLOAD_RULE ALIEN_FORCE \
ALIEN_INSTALL_NETWORK ALIEN_INSTALL_TYPE CONFIG_SITE CURL DESTDIR \
FOO1 FOO2 FOO3 TEST_ALIEN_ALIENS_MISSING TEST_ALIEN_ALWAYS_KEEP VERBOSE WGET
export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}')
make test
%files
%license LICENSE
%doc Changes Changes.Alien-Base Changes.Alien-Base-Wrapper Changes.Test-Alien
%doc example README SUPPORT
%doc Changes.Alien-Base-Wrapper Changes.Test-Alien
%doc example
%{perl_vendorlib}/*
%exclude %dir %{perl_vendorlib}/Alien
%exclude %{perl_vendorlib}/Alien/Base.pm
%exclude %dir %{perl_vendorlib}/Alien/Base
%exclude %{perl_vendorlib}/Alien/Base/PkgConfig.pm
%exclude %{perl_vendorlib}/Alien/Build/Plugin/Decode/HTML.pm
%exclude %{perl_vendorlib}/Alien/Build/Plugin/Decode/Mojo.pm
%exclude %{perl_vendorlib}/Alien/Util.pm
%{_mandir}/man3/*
%exclude %{_mandir}/man3/Alien::Base.3pm.*
%exclude %{_mandir}/man3/Alien::Base::PkgConfig.3pm.*
%exclude %{_mandir}/man3/Alien::Build::Plugin::Decode::HTML.3pm.*
%exclude %{_mandir}/man3/Alien::Build::Plugin::Decode::Mojo.3pm.*
%exclude %{_mandir}/man3/Alien::Util.3pm.*
%files -n perl-Alien-Base
%license LICENSE
%doc Changes Changes.Alien-Base
%doc README SUPPORT
%dir %{perl_vendorlib}/Alien
%{perl_vendorlib}/Alien/Base.pm
%dir %{perl_vendorlib}/Alien/Base
%{perl_vendorlib}/Alien/Base/PkgConfig.pm
%{perl_vendorlib}/Alien/Util.pm
%{_mandir}/man3/Alien::Base.3pm.*
%{_mandir}/man3/Alien::Base::PkgConfig.3pm.*
%{_mandir}/man3/Alien::Util.3pm.*
%files Plugin-Decode-HTML
%{perl_vendorlib}/Alien/Build/Plugin/Decode/HTML.pm
@ -264,7 +432,107 @@ make test
%{perl_vendorlib}/Alien/Build/Plugin/Decode/Mojo.pm
%{_mandir}/man3/Alien::Build::Plugin::Decode::Mojo.3pm.*
%files tests
%{_libexecdir}/%{name}
%changelog
* Fri Sep 09 2022 David Abdurachmanov <davidlt@rivosinc.com> - 2.68-1.0.riscv64
- Boostrap on riscv64
* Tue Sep 06 2022 Petr Pisar <ppisar@redhat.com> - 2.68-1
- 2.68 bump
* Mon Sep 05 2022 Petr Pisar <ppisar@redhat.com> - 2.67-1
- 2.67 bump
* Wed Aug 31 2022 Petr Pisar <ppisar@redhat.com> - 2.65-1
- 2.65 bump
* Tue Aug 16 2022 Petr Pisar <ppisar@redhat.com> - 2.59-1
- 2.59 bump
* Thu Aug 04 2022 Petr Pisar <ppisar@redhat.com> - 2.51-1
- 2.51 bump
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.50-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jun 24 2022 Petr Pisar <ppisar@redhat.com> - 2.50-1
- 2.50 bump
* Fri Jun 03 2022 Jitka Plesnikova <jplesnik@redhat.com> - 2.48-3
- Perl 5.36 re-rebuild of bootstrapped packages
* Wed Jun 01 2022 Jitka Plesnikova <jplesnik@redhat.com> - 2.48-2
- Perl 5.36 rebuild
* Tue Mar 15 2022 Petr Pisar <ppisar@redhat.com> - 2.48-1
- 2.48 bump
* Fri Mar 11 2022 Petr Pisar <ppisar@redhat.com> - 2.47-2
- Move Alien::Base and Alien::Base::PkgConfig to perl-Alien-Base (bug #2063125)
* Mon Mar 07 2022 Petr Pisar <ppisar@redhat.com> - 2.47-1
- 2.47 bump
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.46-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Dec 02 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2.46-1
- 2.46 bump
* Fri Oct 29 2021 Petr Pisar <ppisar@redhat.com> - 2.45-1
- 2.45 bump
* Thu Oct 21 2021 Petr Pisar <ppisar@redhat.com> - 2.44-1
- 2.44 bump
* Thu Sep 30 2021 Petr Pisar <ppisar@redhat.com> - 2.42-1
- 2.42 bump
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.41-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jun 22 2021 Petr Pisar <ppisar@redhat.com> - 2.41-1
- 2.41 bump
* Mon May 24 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2.40-3
- Perl 5.34 re-rebuild of bootstrapped packages
* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2.40-2
- Perl 5.34 rebuild
* Thu May 13 2021 Petr Pisar <ppisar@redhat.com> - 2.40-1
- 2.40 bump
- Package the tests
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.38-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jan 12 2021 Petr Pisar <ppisar@redhat.com> - 2.38-2
- Test-Alien merged into Alien-Build
* Tue Jan 12 2021 Petr Pisar <ppisar@redhat.com> - 2.38-1
- 2.38 bump
* Tue Nov 03 2020 Petr Pisar <ppisar@redhat.com> - 2.37-1
- 2.37 bump
* Mon Sep 21 2020 Petr Pisar <ppisar@redhat.com> - 2.33-1
- 2.33 bump
* Mon Sep 14 2020 Petr Pisar <ppisar@redhat.com> - 2.32-1
- 2.32 bump
* Tue Aug 11 2020 Petr Pisar <ppisar@redhat.com> - 2.29-1
- 2.29 bump
* Wed Aug 05 2020 Petr Pisar <ppisar@redhat.com> - 2.28-1
- 2.28 bump
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.26-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jun 26 2020 Jitka Plesnikova <jplesnik@redhat.com> - 2.26-3
- Perl 5.32 re-rebuild of bootstrapped packages

5
plans/sanity.fmf Normal file
View File

@ -0,0 +1,5 @@
summary: Sanity tests
discover:
how: fmf
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (Alien-Build-2.26.tar.gz) = d5e407e5865dcf6771016cd9b182c9a6f982e6dd2c56ea8ea20b32603dc824f99b1f5ee8d460fa2e412aefbf82f09e338b513ab57ebcfc0fa6e200d103060f48
SHA512 (Alien-Build-2.68.tar.gz) = ecc97a7069f3c3c254710eae6237b4ef43abc75c88e7f0e405de877d817c1f2abd0caa797ffa3b8427fabb21e4063945040c2c4ceaa8631904cf45cecd191944

4
tests/upstream-tests.fmf Normal file
View File

@ -0,0 +1,4 @@
summary: Upstream tests
component: perl-Alien-Build
require: perl-Alien-Build-tests
test: /usr/libexec/perl-Alien-Build/test