apkbuild-cpan.in: also attempt to generate MYMETA from running Build.PL

This commit is contained in:
Celeste 2024-01-05 02:26:06 +00:00 committed by Timothy Legge
parent 1753907af0
commit 7101d6164a
1 changed files with 15 additions and 10 deletions

View File

@ -419,22 +419,27 @@ sub do_depends {
$metaprefix-*${modver}/*META.yml
");
my $build_file = glob("
src/*${modver}/Build.PL
src/*${modver}/Makefile.PL
");
if ( @metafiles ) {
$metaprefix = dirname($metafiles[0]);
} elsif (my $makefile = glob("src/*${modver}/Makefile.PL")) {
$metaprefix = dirname($makefile);
system("cd $metaprefix && perl -I. Makefile.PL");
} elsif (my $buildpl = glob("src/*${modver}/Build.PL")) {
$metaprefix = dirname($buildpl);
} elsif ( $build_file ) {
$metaprefix = dirname($build_file);
system("cd $metaprefix && perl -I. $build_file");
# try again with full metaprefix
push @metafiles, glob("
$metaprefix/*META.json
$metaprefix/*META.yml
");
} else {
die "Unable to find meta, makefile, and build.pl - cannot proceed"
}
# try again with full metaprefix
push @metafiles, glob("
$metaprefix/*META.json
$metaprefix/*META.yml
") unless @metafiles;
die "No meta files found after executing $build_file" unless @metafiles;
my $builddir = do {
my $pkgreal = $apkbuild->{'_pkgreal'};