GNU bug report logs - #73157
[PATCH] gnu: mscgen: Fix dependencies.

Previous Next

Package: guix-patches;

Reported by: Sébastien Lerique <sl <at> eauchat.org>

Date: Mon, 9 Sep 2024 21:19:02 UTC

Severity: normal

Tags: patch

Merged with 73164

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Sébastien Lerique <sl <at> eauchat.org>
Cc: 73157 <at> debbugs.gnu.org
Subject: [bug#73157] [PATCH] gnu: mscgen: Fix dependencies.
Date: Thu, 12 Sep 2024 10:24:38 +0900
Hi Sébastien,

Sébastien Lerique <sl <at> eauchat.org> writes:

> Hi! And thanks.
>
>> I've built this locally, and checked if references were retained to the
>> added inputs; it seems ijg-libjpeg is not retained as a reference, which
>> means it is unused at run time and could be left out (or perhaps it
>> tries to dynamically load it, in which case the dlopen calls could be
>> patched, but I doubt so).
>>
>> --8<---------------cut here---------------start------------->8---
>> $ guix gc -R /gnu/store/jbdbq8kxy5956wkqg4qrvfdks776gfb1-mscgen-0.20 |
>> grep ijg-libjpeg
>> -> no output
>> --8<---------------cut here---------------end--------------->8---
>>
>> Could you verify the above, and if my assumption is correct, send a v2
>> without the added ijg-libjpeg?
>>
>
> So just removing ijg-libjpeg results in
>
>   Package 'libjpeg', required by 'gdlib', not found
>
> and replacing it with libjpeg-turbo works. "libjpeg" on its own is just
> not found (and not defined in the guix source I see
> 590904cca15922e6474fbd3a71af9b3a45b268af ).
>
> Should it be the turbo one?

It should be turbo to match the default libjpeg used in Guix; but rather
than being propagated from mscgen, it should probably be propagated from
gdlib, which seems to have it listed in its pkg-config files:

--8<---------------cut here---------------start------------->8---
$ find $(guix build gd) -name '*.pc' -execdir cat {} +
refix=/gnu/store/8rl0dz3982ms15j2j50myr89dkc3h5y5-gd-2.3.3
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: gd
Description: GD graphics library
Version: 2.3.3
Requires:
Requires.private:   zlib  libpng  freetype2 >= 9.8.3  fontconfig  libjpeg
Cflags: -I${includedir}
Libs.private:  
Libs: -L${libdir} -lgd
--8<---------------cut here---------------end--------------->8---

Anything listed in pkg-config 'Requires' or 'Requires.private' should be
propagated for the pkg-config machinery to work as expected.  This topic
is brushed in the manual (see info "(guix) package References"), where
'propagated-inputs' are documented.

-- 
Thanks,
Maxim




This bug report was last modified 239 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.