libconfig-autoconf-perl: fix ptests

Add missing dependencies.

Also, fixing the tests have surfaced an actual bug: the module
expects unversioned perl library to be present on the system
(or at least present in Perl's $Config{libperl}), however the
OE Perl build has a versioned library, which causes final linking
to fail.

A patch to correct this is part of this change, and it has been
submitted upstream also.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
This commit is contained in:
Gyorgy Sarvari 2025-10-29 14:40:49 +01:00
parent 0fe4ce465e
commit 738f8cb93b
2 changed files with 56 additions and 2 deletions

View File

@ -0,0 +1,42 @@
From 5ffd363a7acd4ef794eb265eaf6c42321097cd46 Mon Sep 17 00:00:00 2001
From: Gyorgy Sarvari <skandigraun@gmail.com>
Date: Sat, 25 Oct 2025 15:48:51 +0200
Subject: [PATCH] correct libperl regex
The module expects the libperl library's format (from $Config{libperl})
to be versionless, just simply libperl.so. However this value in the
OE builds is versioned, causing some issues.
The module transforms this value into a linker flag, and tries to link
with the library. The transformation is simple: cut off the "lib" from
the start, and everything after the last dot.
With versionless version, the transformation works: libperl.so -> perl
However with versioned library it looks like this:
libperl.so.5.99.9 -> perl.so.5.99
which is just wrong.
This patch changes this transformation in way that throws away everything
after the first dot (instead of the last one).
Upstream-Status: Submitted [https://github.com/ambs/Config-AutoConf/pull/19]
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
---
lib/Config/AutoConf.pm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/Config/AutoConf.pm b/lib/Config/AutoConf.pm
index 0bba5a4..a2e7099 100644
--- a/lib/Config/AutoConf.pm
+++ b/lib/Config/AutoConf.pm
@@ -3001,7 +3001,7 @@ sub _check_link_perlapi
my $libperl = $Config{libperl};
$libperl =~ s/^lib//;
- $libperl =~ s/\.[^\.]*$//;
+ $libperl =~ s/^([^\.]*)\..*$/$1/;
push @{$self->{extra_link_flags}}, "-L" . File::Spec->catdir($Config{installarchlib}, "CORE");
push @{$self->{extra_libs}}, "$libperl";

View File

@ -6,7 +6,7 @@ DESCRIPTION = "Config::AutoConf is intended to provide the same opportunities to
developers as GNU Autoconf <http://www.gnu.org/software/autoconf/> does for \
Shell developers."
HOMEPAGE= "https://metacpan.org/release/Config-AutoConf"
HOMEPAGE = "https://metacpan.org/release/Config-AutoConf"
SECTION = "libs"
LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
@ -14,7 +14,8 @@ LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Artistic-1.0;md5=cda03bbdc3c1951996392b872397b798 \
file://${COMMON_LICENSE_DIR}/GPL-1.0-or-later;md5=30c0b8a5048cc2f4be5ff15ef0d8cf61"
SRC_URI = "${CPAN_MIRROR}/authors/id/R/RE/REHSACK/Config-AutoConf-${PV}.tar.gz"
SRC_URI = "${CPAN_MIRROR}/authors/id/R/RE/REHSACK/Config-AutoConf-${PV}.tar.gz \
file://0001-correct-libperl-regex.patch"
SRC_URI[md5sum] = "eeeab8cc93eef7dd2e2c343ecdf247b7"
SRC_URI[sha256sum] = "304f66cc2653264c0fe127d21669e86d3d18cd72f2574d8f5131beec31a0a33e"
@ -34,6 +35,17 @@ RDEPENDS:${PN} += "perl-module-text-parsewords"
RDEPENDS:${PN} += "perl-module-warnings"
RRECOMMENDS:${PN} += "libfile-slurper-perl"
RDEPENDS:${PN}-ptest += " \
packagegroup-core-buildessential \
perl-dev \
perl-module-file-glob \
perl-module-perl-ostype \
perl-module-metadata"
# One test requires perl headers (perl-dev) to compile some
# test application.
INSANE_SKIP:${PN}-ptest += "dev-deps"
S = "${WORKDIR}/Config-AutoConf-${PV}"
inherit cpan ptest-perl