Created attachment 411316 [details] dev-perl:Convert-UUlib-1.500.0:20150908-044552.log >>> Test phase: dev-perl/Convert-UUlib-1.500.0 * Test::Harness Jobs=6 make -j6 test TEST_VERBOSE=0 Running Mkbootstrap for Convert::UUlib () chmod 644 UUlib.bs PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t Can't load '/var/tmp/portage/dev-perl/Convert-UUlib-1.500.0/work/Convert-UUlib-1.5/blib/arch/auto/Convert/UUlib/UUlib.so' for module Convert::UUlib: /var/tmp/portage/dev-perl/Convert-UUlib-1.500.0/work/Convert-UUlib-1.5/blib/arch/auto/Convert/UUlib/UUlib.so: undefined symbol: FP_free at /usr/lib/perl5/5.20.2/hppa2.0-linux/DynaLoader.pm line 193. at t/cb.t line 3. Compilation failed in require at t/cb.t line 3. BEGIN failed--compilation aborted at t/cb.t line 3. ^Mt/cb.t .. 1/3 ^M ^Mt/cb.t .. Dubious, test returned 2 (wstat 512, 0x200) Failed 3/3 subtests Test Summary Report ------------------- t/cb.t (Wstat: 512 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 2 Parse errors: Bad plan. You planned 3 tests but ran 1. Files=1, Tests=1, 0 wallclock secs ( 0.08 usr 0.06 sys + 0.04 cusr 0.08 csys = 0.26 CPU) Result: FAIL Failed 1/1 test programs. 1/1 subtests failed. Makefile:981: recipe for target 'test_dynamic' failed make: *** [test_dynamic] Error 2
Created attachment 411318 [details] dev-perl:Convert-UUlib-1.500.0:20150908-043838.log >>> Test phase: dev-perl/Convert-UUlib-1.500.0 * Test::Harness Jobs=3 make -j3 test TEST_VERBOSE=0 Running Mkbootstrap for Convert::UUlib () chmod 644 UUlib.bs PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t ^Mt/cb.t .. 1/3 Can't load '/var/tmp/portage/dev-perl/Convert-UUlib-1.500.0/work/Convert-UUlib-1.5/blib/arch/auto/Convert/UUlib/UUlib.so' for module Convert::UUlib: /var/tmp/portage/dev-perl/Convert-UUlib-1.500.0/work/Convert-UUlib-1.5/blib/arch/auto/Convert/UUlib/UUlib.so: undefined symbol: FP_free at /usr/lib64/perl5/5.20.2/powerpc64-linux/DynaLoader.pm line 193. at t/cb.t line 3. Compilation failed in require at t/cb.t line 3. BEGIN failed--compilation aborted at t/cb.t line 3. ^M ^Mt/cb.t .. Dubious, test returned 2 (wstat 512, 0x200) Failed 3/3 subtests Test Summary Report ------------------- t/cb.t (Wstat: 512 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 2 Parse errors: Bad plan. You planned 3 tests but ran 1. Files=1, Tests=1, 0 wallclock secs ( 0.08 usr 0.02 sys + 0.04 cusr 0.02 csys = 0.16 CPU) Result: FAIL Failed 1/1 test programs. 1/1 subtests failed. Makefile:981: recipe for target 'test_dynamic' failed make: *** [test_dynamic] Error 2
Investigation shows that this problem doesn't appear to happen using the bundled uulib files.
Installations using system uulib can be demonstrated broken with this command after installation: /usr/bin/perl -MConvert::UUlib=:all -e'SetFNameFilter(sub {});FNameFilter(1);SetFNameFilter()' Which results in the following on a broken install: > /usr/bin/perl: symbol lookup error: /usr/lib64/perl5/vendor_perl/5.24.0/x86_64-linux/auto/Convert/UUlib/UUlib.so: undefined symbol: FP_free
commit 6e01ba8b6f4e18bc758fee80cfd4a9f86af801d5 Author: Kent Fredric <kentnl@gentoo.org> AuthorDate: Sun Jul 10 03:21:31 2016 +1200 Commit: Kent Fredric <kentnl@gentoo.org> CommitDate: Fri Jul 15 23:15:12 2016 +1200 dev-perl/Convert-UUlib: Add IUSE="system-uulib" and disable unbundling Gentoo's uulib implementation and the bundled version differ in some way, making Gentoo's version less stable, causing mislinked .so files as seen in bug #559930 This pragmatic solution just defers this problem to the user so those who care about system purity can do that at their own cost, while making the default workflow both Work(tm) and Work as Upstream Intended. R1-bump required as it is expected people who have existing installations and did not run tests will have a broken installation, which can be confirmed by running: /usr/bin/perl -MConvert::UUlib=:all \ -e'SetFNameFilter(sub {});FNameFilter(1);SetFNameFilter()'
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46d76f54d6fbf257d0f1233fbbf30b0bf0b564a3 commit 46d76f54d6fbf257d0f1233fbbf30b0bf0b564a3 Author: Kent Fredric <kentnl@gentoo.org> AuthorDate: 2020-05-21 18:44:46 +0000 Commit: Kent Fredric <kentnl@gentoo.org> CommitDate: 2020-05-21 18:50:41 +0000 dev-perl/Convert-UUlib: Bump to version 1.710.0 - EAPI7 - Drop USE="system-uulib" due to being completely broken and unfixable - Fix directly calling `ar` and inherit Perl's `ar` - Attempt to correct a dizzying array of license terms Upstream: - Fix heap overflow - Fix format string type missmatches - Simplify code in _FP_gets to not use fscanf for performance - Backport code to c89 - Add GetFileList - experimental perlmulticore support - Speedup yEnc encoding using slice-by-16 instead of crc32 Bug: https://bugs.gentoo.org/559930 Bug: https://bugs.gentoo.org/723216 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Kent Fredric <kentnl@gentoo.org> .../Convert-UUlib/Convert-UUlib-1.710.0.ebuild | 31 ++++++++++++++++++++++ dev-perl/Convert-UUlib/Manifest | 1 + .../files/Convert-UUlib-1.71-tc-ar.patch | 25 +++++++++++++++++ 3 files changed, 57 insertions(+)