summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/pkg-perl.mk8
-rwxr-xr-xsupport/scripts/scancpan10
2 files changed, 12 insertions, 6 deletions
diff --git a/package/pkg-perl.mk b/package/pkg-perl.mk
index 6577588db8..a06c068bb6 100644
--- a/package/pkg-perl.mk
+++ b/package/pkg-perl.mk
@@ -39,7 +39,15 @@ PERL_RUN = PERL5LIB= $(HOST_DIR)/usr/bin/perl
define inner-perl-package
+# Target packages need both the perl interpreter on the target (for
+# runtime) and the perl interpreter on the host (for
+# compilation). However, host packages only need the perl
+# interpreter on the host.
+ifeq ($(4),target)
+$(2)_DEPENDENCIES += host-perl perl
+else
$(2)_DEPENDENCIES += host-perl
+endif
#
# Configure step. Only define it if not already defined by the package
diff --git a/support/scripts/scancpan b/support/scripts/scancpan
index a33ec8bf46..1835fea378 100755
--- a/support/scripts/scancpan
+++ b/support/scripts/scancpan
@@ -650,11 +650,9 @@ while (my ($distname, $dist) = each %dist) {
# the auth part is not used, because we use $(BR2_CPAN_MIRROR)
my($filename, $directories, $suffix) = fileparse( $path, q{tar.gz}, q{tgz} );
$directories =~ s|/$||;
- my $dependencies = join q{ }, qw( = perl ),
- map( { q{host-} . fsname( $_ ); } sort @{$deps_build{$distname}} ),
+ my $dependencies = join q{ }, map( { q{host-} . fsname( $_ ); } sort @{$deps_build{$distname}} ),
map( { fsname( $_ ); } sort @{$deps_runtime{$distname}} );
- my $host_dependencies = join q{ }, qw( = ),
- map { q{host-} . fsname( $_ ); } sort( @{$deps_build{$distname}},
+ my $host_dependencies = join q{ }, map { q{host-} . fsname( $_ ); } sort( @{$deps_build{$distname}},
@{$deps_runtime{$distname}} );
my $license = ref $dist->{license} eq 'ARRAY'
? join q{ or }, @{$dist->{license}}
@@ -677,8 +675,8 @@ while (my ($distname, $dist) = each %dist) {
say {$fh} qq{${brname}_VERSION = ${version}};
say {$fh} qq{${brname}_SOURCE = ${distname}-\$(${brname}_VERSION).${suffix}};
say {$fh} qq{${brname}_SITE = \$(BR2_CPAN_MIRROR)${directories}};
- say {$fh} qq{${brname}_DEPENDENCIES ${dependencies}} if $need_target{$distname};
- say {$fh} qq{HOST_${brname}_DEPENDENCIES ${host_dependencies}} if $need_host{$distname};
+ say {$fh} qq{${brname}_DEPENDENCIES = ${dependencies}} if $need_target{$distname} && $dependencies;
+ say {$fh} qq{HOST_${brname}_DEPENDENCIES = ${host_dependencies}} if $need_host{$distname} && $host_dependencies;
say {$fh} qq{${brname}_LICENSE = ${license}} if $license && $license ne q{unknown};
say {$fh} qq{${brname}_LICENSE_FILES = ${license_files}} if $license_files;
say {$fh} qq{};
OpenPOWER on IntegriCloud