diff --git a/.gitignore b/.gitignore index c22c93b..cddc3a5 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /Alien-Build-1.39.tar.gz /Alien-Build-1.41.tar.gz /Alien-Build-1.42.tar.gz +/Alien-Build-1.43.tar.gz diff --git a/Alien-Build-1.42-Remove-redundant-pkgconfig-implementations.patch b/Alien-Build-1.42-Remove-redundant-pkgconfig-implementations.patch deleted file mode 100644 index f977b80..0000000 --- a/Alien-Build-1.42-Remove-redundant-pkgconfig-implementations.patch +++ /dev/null @@ -1,340 +0,0 @@ -From ac42c9893901afa59daa23361485f3131678f9ee Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= -Date: Fri, 8 Sep 2017 11:31:02 +0200 -Subject: [PATCH] Remove redundant pkgconfig implementations -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Only one implementation is required, we selected -Alien::Build::Plugin::PkgConfig::LibPkgConf. This patch removes other -ones to decrease number of dependencies. - -Signed-off-by: Petr Písař ---- - MANIFEST | 4 - - Makefile.PL | 4 +- - lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm | 19 +-- - t/01_use.t | 4 - - t/alien_build_plugin_pkgconfig_negotiate.t | 2 +- - t/alien_build_plugin_pkgconfig_negotiate__pick.t | 153 ++--------------------- - 6 files changed, 11 insertions(+), 175 deletions(-) - -diff --git a/MANIFEST b/MANIFEST -index 559f19f..0e0a343 100644 ---- a/MANIFEST -+++ b/MANIFEST -@@ -166,11 +166,9 @@ lib/Alien/Build/Plugin/Fetch/LocalDir.pm - lib/Alien/Build/Plugin/Fetch/NetFTP.pm - lib/Alien/Build/Plugin/Fetch/Wget.pm - lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm --lib/Alien/Build/Plugin/PkgConfig/CommandLine.pm - lib/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm - lib/Alien/Build/Plugin/PkgConfig/MakeStatic.pm - lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm --lib/Alien/Build/Plugin/PkgConfig/PP.pm - lib/Alien/Build/Plugin/Prefer.pod - lib/Alien/Build/Plugin/Prefer/BadVersion.pm - lib/Alien/Build/Plugin/Prefer/SortVersions.pm -@@ -239,12 +237,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 --t/alien_build_plugin_pkgconfig_commandline.t - t/alien_build_plugin_pkgconfig_libpkgconf.t - t/alien_build_plugin_pkgconfig_makestatic.t - t/alien_build_plugin_pkgconfig_negotiate.t - t/alien_build_plugin_pkgconfig_negotiate__pick.t --t/alien_build_plugin_pkgconfig_pp.t - t/alien_build_plugin_prefer_badversion.t - t/alien_build_plugin_prefer_sortversions.t - t/alien_build_plugin_probe_cbuilder.t -diff --git a/Makefile.PL b/Makefile.PL -index 2bd520b..bbfd7e8 100644 ---- a/Makefile.PL -+++ b/Makefile.PL -@@ -74,11 +74,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", - "lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Gather/IsolateDynamic.pm", -- "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", - "lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/Negotiate.pm", -- "lib/Alien/Build/Plugin/PkgConfig/PP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/PP.pm", - "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/SortVersions.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer/SortVersions.pm", -@@ -180,4 +178,4 @@ sub requires { goto &runtime_requires } - sub runtime_requires { - my ( $module, $version_or_range ) = @_; - _add_prereq( PREREQ_PM => $module, $version_or_range ); --} -\ 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 80929ec..e4dc274 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; - use warnings; - use Alien::Build::Plugin; --use Alien::Build::Plugin::PkgConfig::PP; - use Alien::Build::Plugin::PkgConfig::LibPkgConf; --use Alien::Build::Plugin::PkgConfig::CommandLine; - use Alien::Build::Util qw( _perl_config ); - use Carp (); - -@@ -31,21 +29,6 @@ sub pick - { - return 'PkgConfig::LibPkgConf'; - } -- -- if(Alien::Build::Plugin::PkgConfig::CommandLine->available) -- { -- # TODO: determine environment or flags necessary for using pkg-config -- # on solaris 64 bit. -- if(! (_perl_config('osname') eq 'solaris' && _perl_config('ptrsize') == 8)) -- { -- return 'PkgConfig::CommandLine'; -- } -- } -- -- if(Alien::Build::Plugin::PkgConfig::PP->available) -- { -- return 'PkgConfig::PP'; -- } - else - { - # this is a fata error. because we check for a pkg-config implementation -@@ -53,7 +36,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. -- Carp::croak("Could not find an appropriate pkg-config or pkgconf implementation, please install PkgConfig.pm, PkgConfig::LibPkgConf, pkg-config or pkgconf"); -+ Carp::croak("Could not find an appropriate pkg-config or pkgconf implementation, please install PkgConfig::LibPkgConf"); - } - } - -diff --git a/t/01_use.t b/t/01_use.t -index a8cff2e..cb8d9bd 100644 ---- a/t/01_use.t -+++ b/t/01_use.t -@@ -40,11 +40,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'; --require_ok 'Alien::Build::Plugin::PkgConfig::CommandLine'; - require_ok 'Alien::Build::Plugin::PkgConfig::LibPkgConf'; - require_ok 'Alien::Build::Plugin::PkgConfig::MakeStatic'; - require_ok 'Alien::Build::Plugin::PkgConfig::Negotiate'; --require_ok 'Alien::Build::Plugin::PkgConfig::PP'; - require_ok 'Alien::Build::Plugin::Prefer::BadVersion'; - require_ok 'Alien::Build::Plugin::Prefer::SortVersions'; - require_ok 'Alien::Build::Plugin::Probe::CBuilder'; -@@ -97,11 +95,9 @@ ok -f 't/alien_build_plugin_fetch_localdir.t', 'test for Alien::Build: - 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'; --ok -f 't/alien_build_plugin_pkgconfig_commandline.t', 'test for Alien::Build::Plugin::PkgConfig::CommandLine'; - ok -f 't/alien_build_plugin_pkgconfig_libpkgconf.t', 'test for Alien::Build::Plugin::PkgConfig::LibPkgConf'; - ok -f 't/alien_build_plugin_pkgconfig_makestatic.t', 'test for Alien::Build::Plugin::PkgConfig::MakeStatic'; - ok -f 't/alien_build_plugin_pkgconfig_negotiate.t', 'test for Alien::Build::Plugin::PkgConfig::Negotiate'; --ok -f 't/alien_build_plugin_pkgconfig_pp.t', 'test for Alien::Build::Plugin::PkgConfig::PP'; - ok -f 't/alien_build_plugin_prefer_badversion.t', 'test for Alien::Build::Plugin::Prefer::BadVersion'; - ok -f 't/alien_build_plugin_prefer_sortversions.t', 'test for Alien::Build::Plugin::Prefer::SortVersions'; - ok -f 't/alien_build_plugin_probe_cbuilder.t', 'test for Alien::Build::Plugin::Probe::CBuilder'; -diff --git a/t/alien_build_plugin_pkgconfig_negotiate.t b/t/alien_build_plugin_pkgconfig_negotiate.t -index 1233b9a..9492ea1 100644 ---- a/t/alien_build_plugin_pkgconfig_negotiate.t -+++ b/t/alien_build_plugin_pkgconfig_negotiate.t -@@ -16,7 +16,7 @@ subtest 'pick' => sub { - - subtest 'override' => sub { - -- foreach my $name (qw( PP LibPkgConf CommandLine )) -+ foreach my $name (qw( LibPkgConf )) - { - 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 105c6b6..db886f8 100644 ---- a/t/alien_build_plugin_pkgconfig_negotiate__pick.t -+++ b/t/alien_build_plugin_pkgconfig_negotiate__pick.t -@@ -25,9 +25,10 @@ subtest 'LibPkgConf' => sub { - - local $PkgConfig::LibPkgConf::VERSION = '0.01'; - -- isnt( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::LibPkgConf', -+ eval { Alien::Build::Plugin::PkgConfig::Negotiate->pick }; -+ ok( -+ $@, -+ 'PkgConfig::LibPkgConf "0.1" is too old', - ); - - }; -@@ -40,9 +41,10 @@ subtest 'LibPkgConf' => sub { - # cannot be loaded for the rest of this .t file - note scalar capture_merged { Devel::Hide->import(qw( PkgConfig::LibPkgConf )) }; - -- isnt( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::LibPkgConf', -+ eval { Alien::Build::Plugin::PkgConfig::Negotiate->pick }; -+ ok( -+ $@, -+ 'Missing PkgConfig::LibPkgConf triggers an exception', - ); - - }; -@@ -56,144 +58,5 @@ my $make_pkgconfig_libpkgconf_unavailable = Test2::Mock->new( - ], - ); - --subtest 'CommandLine' => sub { -- -- local $INC{'PkgConfig.pm'} = __FILE__; -- local $PkgConfig::VERSION = '0.14026'; -- -- my %which; -- -- my $mock = Test2::Mock->new( -- class => 'File::Which', -- override => [ -- which => sub { -- my($prog) = @_; -- if(defined $prog) -- { -- if($which{$prog}) -- { -- note "which: $prog => $which{$prog}"; -- return $which{$prog}; -- } -- else -- { -- note "which: $prog N/A"; -- } -- } -- else -- { -- note "which: undef"; -- } -- }, -- ], -- ); -- -- my $mock2 = Test2::Mock->new( -- class => 'Alien::Build::Plugin::PkgConfig::Negotiate', -- ); -- -- if($^O eq 'solaris') { -- $mock2->override( -- _perl_config => sub { -- my($key) = @_; -- if($key eq 'osname') -- { return 'linux' } -- else -- { return $Config{$key} } -- }, -- ); -- } -- -- subtest 'no command line' => sub { -- -- %which = (); -- -- is( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::PP', -- ); -- -- }; -- -- subtest 'pkg-config' => sub { -- -- %which = ( 'pkg-config' => '/usr/bin/pkg-config' ); -- -- is( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::CommandLine', -- ); -- -- }; -- -- subtest 'pkgconf' => sub { -- -- %which = ( 'pkgconf' => '/usr/bin/pkgconf' ); -- -- is( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::CommandLine', -- ); -- -- }; -- -- subtest 'PKG_CONFIG' => sub { -- -- local $ENV{PKG_CONFIG} = 'foo-pkg-config'; -- %which = ( 'foo-pkg-config' => '/usr/bin/foo-pkg-config' ); -- -- is( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::CommandLine', -- ); -- -- }; -- -- subtest 'PP' => sub { -- -- subtest '64 bit solaris' => sub { -- -- %which = ( 'pkg-config' => '/usr/bin/pkg-config' ); -- -- # From the old AB::MB days we prefer PkgConfig.pm -- # for 64 bit solaris over the command line pkg-config -- -- my $mock2 = Test2::Mock->new( -- class => 'Alien::Build::Plugin::PkgConfig::Negotiate', -- override => [ -- _perl_config => sub { -- my($key) = @_; -- if($key eq 'ptrsize') -- { return 8 } -- elsif($key eq 'osname') -- { return 'solaris' } -- else -- { return $Config{$key} } -- }, -- ], -- ); -- -- is( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::PP', -- ); -- -- }; -- -- subtest 'PP is fallback' => sub { -- -- %which = (); -- -- is( -- Alien::Build::Plugin::PkgConfig::Negotiate->pick, -- 'PkgConfig::PP', -- ); -- -- }; -- -- }; -- --}; -- - done_testing; - --- -2.14.3 - diff --git a/Alien-Build-1.43-Remove-redundant-pkgconfig-implementations.patch b/Alien-Build-1.43-Remove-redundant-pkgconfig-implementations.patch new file mode 100644 index 0000000..3368e53 --- /dev/null +++ b/Alien-Build-1.43-Remove-redundant-pkgconfig-implementations.patch @@ -0,0 +1,341 @@ +From f4102aafec479748c15e28c844f257595175ef38 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Fri, 8 Sep 2017 11:31:02 +0200 +Subject: [PATCH] Remove redundant pkgconfig implementations +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Only one implementation is required, we selected +Alien::Build::Plugin::PkgConfig::LibPkgConf. This patch removes other +ones to decrease number of dependencies. + +Signed-off-by: Petr Písař +--- + MANIFEST | 4 - + Makefile.PL | 4 +- + lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm | 20 +-- + t/01_use.t | 4 - + t/alien_build_plugin_pkgconfig_negotiate.t | 2 +- + t/alien_build_plugin_pkgconfig_negotiate__pick.t | 153 ++--------------------- + 6 files changed, 11 insertions(+), 176 deletions(-) + +diff --git a/MANIFEST b/MANIFEST +index 359958f..11b9703 100644 +--- a/MANIFEST ++++ b/MANIFEST +@@ -166,11 +166,9 @@ lib/Alien/Build/Plugin/Fetch/LocalDir.pm + lib/Alien/Build/Plugin/Fetch/NetFTP.pm + lib/Alien/Build/Plugin/Fetch/Wget.pm + lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm +-lib/Alien/Build/Plugin/PkgConfig/CommandLine.pm + lib/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm + lib/Alien/Build/Plugin/PkgConfig/MakeStatic.pm + lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm +-lib/Alien/Build/Plugin/PkgConfig/PP.pm + lib/Alien/Build/Plugin/Prefer.pod + lib/Alien/Build/Plugin/Prefer/BadVersion.pm + lib/Alien/Build/Plugin/Prefer/SortVersions.pm +@@ -239,12 +237,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 +-t/alien_build_plugin_pkgconfig_commandline.t + t/alien_build_plugin_pkgconfig_libpkgconf.t + t/alien_build_plugin_pkgconfig_makestatic.t + t/alien_build_plugin_pkgconfig_negotiate.t + t/alien_build_plugin_pkgconfig_negotiate__pick.t +-t/alien_build_plugin_pkgconfig_pp.t + t/alien_build_plugin_prefer_badversion.t + t/alien_build_plugin_prefer_sortversions.t + t/alien_build_plugin_probe_cbuilder.t +diff --git a/Makefile.PL b/Makefile.PL +index 86d3484..b86b991 100644 +--- a/Makefile.PL ++++ b/Makefile.PL +@@ -74,11 +74,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", + "lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Gather/IsolateDynamic.pm", +- "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", + "lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/Negotiate.pm", +- "lib/Alien/Build/Plugin/PkgConfig/PP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/PP.pm", + "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/SortVersions.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer/SortVersions.pm", +@@ -180,4 +178,4 @@ sub requires { goto &runtime_requires } + sub runtime_requires { + my ( $module, $version_or_range ) = @_; + _add_prereq( PREREQ_PM => $module, $version_or_range ); +-} +\ 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 2d65bfc..cad800d 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; + use warnings; + use Alien::Build::Plugin; +-use Alien::Build::Plugin::PkgConfig::PP; + use Alien::Build::Plugin::PkgConfig::LibPkgConf; +-use Alien::Build::Plugin::PkgConfig::CommandLine; + use Alien::Build::Util qw( _perl_config ); + use Carp (); + +@@ -32,22 +30,6 @@ sub pick + return 'PkgConfig::LibPkgConf'; + } + +- if(Alien::Build::Plugin::PkgConfig::CommandLine->available) +- { +- # TODO: determine environment or flags necessary for using pkg-config +- # on solaris 64 bit. +- # Some advice on pkg-config and 64 bit Solaris +- # https://docs.oracle.com/cd/E53394_01/html/E61689/gplhi.html +- if(! (_perl_config('osname') eq 'solaris' && _perl_config('ptrsize') == 8)) +- { +- return 'PkgConfig::CommandLine'; +- } +- } +- +- if(Alien::Build::Plugin::PkgConfig::PP->available) +- { +- return 'PkgConfig::PP'; +- } + else + { + # this is a fata error. because we check for a pkg-config implementation +@@ -55,7 +37,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. +- Carp::croak("Could not find an appropriate pkg-config or pkgconf implementation, please install PkgConfig.pm, PkgConfig::LibPkgConf, pkg-config or pkgconf"); ++ Carp::croak("Could not find an appropriate pkg-config or pkgconf implementation, please install PkgConfig::LibPkgConf"); + } + } + +diff --git a/t/01_use.t b/t/01_use.t +index ecc8243..8e7daf2 100644 +--- a/t/01_use.t ++++ b/t/01_use.t +@@ -40,11 +40,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'; +-require_ok 'Alien::Build::Plugin::PkgConfig::CommandLine'; + require_ok 'Alien::Build::Plugin::PkgConfig::LibPkgConf'; + require_ok 'Alien::Build::Plugin::PkgConfig::MakeStatic'; + require_ok 'Alien::Build::Plugin::PkgConfig::Negotiate'; +-require_ok 'Alien::Build::Plugin::PkgConfig::PP'; + require_ok 'Alien::Build::Plugin::Prefer::BadVersion'; + require_ok 'Alien::Build::Plugin::Prefer::SortVersions'; + require_ok 'Alien::Build::Plugin::Probe::CBuilder'; +@@ -97,11 +95,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'; +-ok -f 't/alien_build_plugin_pkgconfig_commandline.t', 'test for Alien::Build::Plugin::PkgConfig::CommandLine'; + ok -f 't/alien_build_plugin_pkgconfig_libpkgconf.t', 'test for Alien::Build::Plugin::PkgConfig::LibPkgConf'; + ok -f 't/alien_build_plugin_pkgconfig_makestatic.t', 'test for Alien::Build::Plugin::PkgConfig::MakeStatic'; + ok -f 't/alien_build_plugin_pkgconfig_negotiate.t', 'test for Alien::Build::Plugin::PkgConfig::Negotiate'; +-ok -f 't/alien_build_plugin_pkgconfig_pp.t', 'test for Alien::Build::Plugin::PkgConfig::PP'; + ok -f 't/alien_build_plugin_prefer_badversion.t', 'test for Alien::Build::Plugin::Prefer::BadVersion'; + ok -f 't/alien_build_plugin_prefer_sortversions.t', 'test for Alien::Build::Plugin::Prefer::SortVersions'; + ok -f 't/alien_build_plugin_probe_cbuilder.t', 'test for Alien::Build::Plugin::Probe::CBuilder'; +diff --git a/t/alien_build_plugin_pkgconfig_negotiate.t b/t/alien_build_plugin_pkgconfig_negotiate.t +index 1233b9a..9492ea1 100644 +--- a/t/alien_build_plugin_pkgconfig_negotiate.t ++++ b/t/alien_build_plugin_pkgconfig_negotiate.t +@@ -16,7 +16,7 @@ subtest 'pick' => sub { + + subtest 'override' => sub { + +- foreach my $name (qw( PP LibPkgConf CommandLine )) ++ foreach my $name (qw( LibPkgConf )) + { + 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 105c6b6..db886f8 100644 +--- a/t/alien_build_plugin_pkgconfig_negotiate__pick.t ++++ b/t/alien_build_plugin_pkgconfig_negotiate__pick.t +@@ -25,9 +25,10 @@ subtest 'LibPkgConf' => sub { + + local $PkgConfig::LibPkgConf::VERSION = '0.01'; + +- isnt( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::LibPkgConf', ++ eval { Alien::Build::Plugin::PkgConfig::Negotiate->pick }; ++ ok( ++ $@, ++ 'PkgConfig::LibPkgConf "0.1" is too old', + ); + + }; +@@ -40,9 +41,10 @@ subtest 'LibPkgConf' => sub { + # cannot be loaded for the rest of this .t file + note scalar capture_merged { Devel::Hide->import(qw( PkgConfig::LibPkgConf )) }; + +- isnt( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::LibPkgConf', ++ eval { Alien::Build::Plugin::PkgConfig::Negotiate->pick }; ++ ok( ++ $@, ++ 'Missing PkgConfig::LibPkgConf triggers an exception', + ); + + }; +@@ -56,144 +58,5 @@ my $make_pkgconfig_libpkgconf_unavailable = Test2::Mock->new( + ], + ); + +-subtest 'CommandLine' => sub { +- +- local $INC{'PkgConfig.pm'} = __FILE__; +- local $PkgConfig::VERSION = '0.14026'; +- +- my %which; +- +- my $mock = Test2::Mock->new( +- class => 'File::Which', +- override => [ +- which => sub { +- my($prog) = @_; +- if(defined $prog) +- { +- if($which{$prog}) +- { +- note "which: $prog => $which{$prog}"; +- return $which{$prog}; +- } +- else +- { +- note "which: $prog N/A"; +- } +- } +- else +- { +- note "which: undef"; +- } +- }, +- ], +- ); +- +- my $mock2 = Test2::Mock->new( +- class => 'Alien::Build::Plugin::PkgConfig::Negotiate', +- ); +- +- if($^O eq 'solaris') { +- $mock2->override( +- _perl_config => sub { +- my($key) = @_; +- if($key eq 'osname') +- { return 'linux' } +- else +- { return $Config{$key} } +- }, +- ); +- } +- +- subtest 'no command line' => sub { +- +- %which = (); +- +- is( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::PP', +- ); +- +- }; +- +- subtest 'pkg-config' => sub { +- +- %which = ( 'pkg-config' => '/usr/bin/pkg-config' ); +- +- is( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::CommandLine', +- ); +- +- }; +- +- subtest 'pkgconf' => sub { +- +- %which = ( 'pkgconf' => '/usr/bin/pkgconf' ); +- +- is( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::CommandLine', +- ); +- +- }; +- +- subtest 'PKG_CONFIG' => sub { +- +- local $ENV{PKG_CONFIG} = 'foo-pkg-config'; +- %which = ( 'foo-pkg-config' => '/usr/bin/foo-pkg-config' ); +- +- is( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::CommandLine', +- ); +- +- }; +- +- subtest 'PP' => sub { +- +- subtest '64 bit solaris' => sub { +- +- %which = ( 'pkg-config' => '/usr/bin/pkg-config' ); +- +- # From the old AB::MB days we prefer PkgConfig.pm +- # for 64 bit solaris over the command line pkg-config +- +- my $mock2 = Test2::Mock->new( +- class => 'Alien::Build::Plugin::PkgConfig::Negotiate', +- override => [ +- _perl_config => sub { +- my($key) = @_; +- if($key eq 'ptrsize') +- { return 8 } +- elsif($key eq 'osname') +- { return 'solaris' } +- else +- { return $Config{$key} } +- }, +- ], +- ); +- +- is( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::PP', +- ); +- +- }; +- +- subtest 'PP is fallback' => sub { +- +- %which = (); +- +- is( +- Alien::Build::Plugin::PkgConfig::Negotiate->pick, +- 'PkgConfig::PP', +- ); +- +- }; +- +- }; +- +-}; +- + done_testing; + +-- +2.14.4 + diff --git a/perl-Alien-Build.spec b/perl-Alien-Build.spec index f86278c..9d7927e 100644 --- a/perl-Alien-Build.spec +++ b/perl-Alien-Build.spec @@ -2,15 +2,15 @@ %{bcond_without perl_Alien_Build_enables_optional_test} Name: perl-Alien-Build -Version: 1.42 +Version: 1.43 Release: 1%{?dist} Summary: Build external dependencies for use in CPAN License: GPL+ or Artistic -URL: http://search.cpan.org/dist/Alien-Build/ -Source0: http://www.cpan.org/authors/id/P/PL/PLICEASE/Alien-Build-%{version}.tar.gz +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.42-Remove-redundant-pkgconfig-implementations.patch +Patch0: Alien-Build-1.43-Remove-redundant-pkgconfig-implementations.patch BuildArch: noarch BuildRequires: make BuildRequires: perl-generators @@ -181,6 +181,9 @@ make test %{_mandir}/man3/* %changelog +* Mon Jun 04 2018 Petr Pisar - 1.43-1 +- 1.43 bump + * Thu May 10 2018 Jitka Plesnikova - 1.42-1 - 1.42 bump diff --git a/sources b/sources index 208a19c..bb35d6f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Alien-Build-1.42.tar.gz) = 3c8e15a66deefd6c7f64b88130a8f9fbc7388648607f113fc40dc45e0fb125a97c1bd7df07cee62f960e5e968c292a234388f5742880b164ffafac21df0b7bd9 +SHA512 (Alien-Build-1.43.tar.gz) = ba60413143c1dae2fa335ff350a7470b3984c61b0b07791b37aee91a95898acd6667e2b3f18828638539a5cc1fff80cbf7a349b95adb7028198df0d5f1c8dc86