libperl stage-qa check and libraries that do not link against libperl.so

Mathieu Arnold mat at FreeBSD.org
Mon Jan 18 15:35:02 UTC 2016


tl;dr:

The qa script work as intented, it caught some software doing something
stupid.

+--On 18 janvier 2016 16:18:40 +0100 Mathieu Arnold <mat at FreeBSD.org> wrote:
| 
| 
| +--On 18 janvier 2016 08:00:29 -0200 Raphael Kubo da Costa
| <rakuco at FreeBSD.org> wrote:
|| Mathieu Arnold <mat at FreeBSD.org> writes:
|| 
||> +--On 17 janvier 2016 23:12:36 +0100 Raphael Kubo da Costa
||> <rakuco at FreeBSD.org> wrote:
||> |> For these, if the non-linking is intentional, and not needed,
||> |> ignore the ***WARNING***.
||> | 
||> | Right. If linking against libperl.so and not linking against it are
||> | both fine, does it still make sense to have that stage-qa check?
||> 
||> There is a stage-qa check because if you link against libperl.so, you
||> MUST have rpath set to the path of libperl.so, it happens if the port is
||> doing what Perl should be doing and getting it wrong.  Also, sometime,
||> you don't link with libperl.so, and it's a mistake, and it should be.
||> 
||> There are a few cases where it's not needed, but when I added the qa
||> check when I changed libperl.so to be versionned, out of all the ports
||> that install .so in PERL_ARCH, there were, say, 3 or 4 that had a .so
||> that did not need to be linked with libperl.so.
|| 
|| How about making the "not linked with libperl.so.x.y" warning non-fatal
|| then? Right now I cannot just ignore it as suggested because it makes
|| the script exit with a non-zero error code.
| 
| I just had a look at the commit, and the qa script is right.  The author
| is wrong, the .so contains Perl code and must be linked with libperl.so.
| It must be linked with it so that when the major Perl version is changed
| (like 5.20 -> 5.22 that is happening soon(tm)) the link allows pkg to
| know that the package needs to be reinstalled so that it continues to
| work.
| 
|| While here: there's a FIXME comment in this part that talks about
|| changing the linkage detection logic, but it does not specify what
|| should be changed. Do you have more information? I could try to fix both
|| issues and send a patch for review.
| 
| I forgot about the FIXME. It works as intented right now, I'll have a look
| at it later.



-- 
Mathieu Arnold
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 949 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-gnome/attachments/20160118/ff1d9a08/attachment.sig>


More information about the freebsd-gnome mailing list