Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 539356 - =net-dns/libidn-1.29 LDFLAGS="--as-needed" - lib/gltests/test-lock lib/gltests/test-thread_create fail
Summary: =net-dns/libidn-1.29 LDFLAGS="--as-needed" - lib/gltests/test-lock lib/gltest...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Jeroen Roovers (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: as-needed
  Show dependency tree
 
Reported: 2015-02-08 17:29 UTC by Anthony Ryan
Modified: 2024-01-14 02:46 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
libidn-1.29.ebuild.patch (file_539356.txt,669 bytes, patch)
2015-02-08 17:30 UTC, Anthony Ryan
Details | Diff
emerge --info (file_539356.txt,4.80 KB, text/plain)
2015-02-09 16:50 UTC, Anthony Ryan
Details
build.log (build.log,217.26 KB, text/plain)
2015-02-09 16:51 UTC, Anthony Ryan
Details
Checking if the problem is in the testsuite (testsuite-bug.txt,63.13 KB, text/plain)
2015-02-09 17:22 UTC, Anthony Ryan
Details
Checking if the problem is in the library (library-bug.txt,49.04 KB, text/plain)
2015-02-09 17:23 UTC, Anthony Ryan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anthony Ryan 2015-02-08 17:29:21 UTC
LDFLAGS="--as-needed" causes test failures when compiling the latest stable libidn.
Comment 1 Anthony Ryan 2015-02-08 17:30:01 UTC
Created attachment 395922 [details, diff]
libidn-1.29.ebuild.patch
Comment 2 Anthony Ryan 2015-02-08 18:20:45 UTC
I have contacted the developers about this issue in an effort to get it resolved for the next release. Unfortunately they do not have a bug tracker to provide a public reference to the correspondence.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2015-02-09 07:58:08 UTC
Comment on attachment 395922 [details, diff]
libidn-1.29.ebuild.patch

1) Please post your `emerge --info' output in a comment.
2) Please attach the entire build log to this bug report.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2015-02-09 08:00:58 UTC
Comment on attachment 395922 [details, diff]
libidn-1.29.ebuild.patch

This change would overreach your goal by a long way. If the problem happens in src_test(), then we shouldn't need to change the way /everything/ is installed.
Comment 5 Anthony Ryan 2015-02-09 16:49:16 UTC
You may be correct.

My reason for changing the installation of the entire library is that the tests are intended to evaluate the behavior of the program in a way it would be used by other programs. This particular failure may indicate either an issue in the test suite or an issue in the entire library that will cause obscure problems in other programs.

The only way I can see to properly determine which case it is, would be to link the library with --as-needed and the test suite with --no-as-needed to see if the tests are still failing.

I should have done this prior to filing this bug report.
Comment 6 Anthony Ryan 2015-02-09 16:50:41 UTC
Created attachment 395986 [details]
emerge --info
Comment 7 Anthony Ryan 2015-02-09 16:51:17 UTC
Created attachment 395988 [details]
build.log
Comment 8 Anthony Ryan 2015-02-09 16:56:26 UTC
A note about the emerge --info output. It says LDLAGS is empty. I compiled set the LDFLAGS for this package only to verify.

LDFLAGS="-Wl,--as-needed" emerge --oneshot libidn
Comment 9 Anthony Ryan 2015-02-09 17:20:35 UTC
I have just concluded some testing on the library specifically using different LDFLAGS in the library compliation and the test suite compilation and it appears to have confirmed my suspicon that this is a problem in the library and not the test suite and my initial proposed solution is the only sensible one here.

I will log files from my local testing so you can verify or dispute my findings.
Comment 10 Anthony Ryan 2015-02-09 17:22:09 UTC
Created attachment 395990 [details]
Checking if the problem is in the testsuite

All of the tests passed when the tests were compiled with as-needed and the library was compiled with no-as-needed.
Comment 11 Anthony Ryan 2015-02-09 17:23:32 UTC
Created attachment 395992 [details]
Checking if the problem is in the library

The expected tests failed when the library was compiled with as-needed and the tests were compiled with no-as-needed.
Comment 12 Jeroen Roovers (RETIRED) gentoo-dev 2015-02-10 07:09:54 UTC
These are problems in gnulib, not libidn. They should be allowed to fail all they like. The only problem I see is that they are run /before/ the libidn specific tests in <tests/>. The gnulib issues are known upstream and might even have been fixed.

The issue is fixed by not simply running the gnulib tests.`
Comment 13 Larry the Git Cow gentoo-dev 2024-01-14 02:46:29 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=00435780c75e8a0d728bd1aaf69acc86c77fbd1b

commit 00435780c75e8a0d728bd1aaf69acc86c77fbd1b
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2024-01-14 02:43:35 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-01-14 02:44:36 +0000

    net-dns/libidn: add 1.42
    
    Note that I've gone back to the default src_test implementation. Ignoring
    gnulib test failures isn't ideal at all, so let's not do that, given it could
    affect how the program operates and we've found other bugs that way in other
    packages before. I'm not aware of any other packages where we make an effort
    to skip the gnulib tests.
    
    Bug: https://bugs.gentoo.org/500662
    Bug: https://bugs.gentoo.org/539356
    Closes: https://bugs.gentoo.org/898348
    Signed-off-by: Sam James <sam@gentoo.org>

 net-dns/libidn/Manifest           |  2 +
 net-dns/libidn/libidn-1.42.ebuild | 96 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 98 insertions(+)