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
# 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}}
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{};