From: Francois Perrad Date: Wed, 1 Oct 2014 18:36:59 +0000 (+0200) Subject: support/script/scancpan: add -test option X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1fd8d9e4dd04c63c17f13352e1c0f01e2bea7312;p=buildroot.git support/script/scancpan: add -test option Perl modules can have three different types of dependencies: - configure/build time dependency which becomes host dependency - runtime dependency which becomes target dependency - test time dependency which is useless in a cross-compiling context like BR Before this patch, test time dependencies are handled like runtime dependencies. After this patch, test time dependencies are ignored by default. The newly added -test option allows to add them anyway if needed. [Thomas: reword commit log using Francois proposal.] Signed-off-by: Francois Perrad Signed-off-by: Thomas Petazzoni --- diff --git a/support/scripts/scancpan b/support/scripts/scancpan index f5612e3fee..a049e2c7d7 100755 --- a/support/scripts/scancpan +++ b/support/scripts/scancpan @@ -483,7 +483,7 @@ use Module::CoreList; use HTTP::Tiny; use MetaCPAN::API::Tiny; -my ($help, $man, $quiet, $force, $recommend, $host); +my ($help, $man, $quiet, $force, $recommend, $test, $host); my $target = 1; GetOptions( 'help|?' => \$help, 'man' => \$man, @@ -491,7 +491,8 @@ GetOptions( 'help|?' => \$help, 'force|f' => \$force, 'host!' => \$host, 'target!' => \$target, - 'recommend' => \$recommend + 'recommend' => \$recommend, + 'test' => \$test ) or pod2usage(-exitval => 1); pod2usage(-exitval => 0) if $help; pod2usage(-exitval => 0, -verbose => 2) if $man; @@ -554,11 +555,12 @@ sub fetch { next if $modname eq q{perl}; next if $modname =~ m|^Alien|; next if $modname =~ m|^Win32|; + next if !$test && $modname =~ m|^Test|; next if Module::CoreList::first_release( $modname ); # we could use the host Module::CoreList data, because host perl and # target perl have the same major version next if ${$dep}{phase} eq q{develop}; - next if ${$dep}{phase} eq q{test}; + next if !$test && ${$dep}{phase} eq q{test}; next if !$recommend && ${$dep}{relationship} ne q{requires}; my $distname = $mcpan->module( $modname )->{distribution}; if (${$dep}{phase} eq q{runtime}) { @@ -716,6 +718,7 @@ supports/scripts/scancpan [options] [distname ...] -target/-notarget -host/-nohost -recommend + -test =head1 OPTIONS @@ -749,6 +752,10 @@ Switches package generation for the host variant (the default is C<-nohost>). Adds I dependencies. +=item B<-test> + +Adds dependencies for test. + =back =head1 DESCRIPTION