Hi Kei, guix-commits@gnu.org skribis: > commit 83afa4e9a6aa4dc69f86651d795007dc96a31e64 > Author: Kei Kebreau <kkebreau@posteo.net> > AuthorDate: Sun Aug 2 16:54:03 2020 -0400 > > gnu: libmad: Install pkg-config file. > > * gnu/packages/mp3.scm (libmad)[arguments]: Add 'install-pkg-config phase. [...] > + (add-after 'install 'install-pkg-config > + (lambda* (#:key outputs #:allow-other-keys) > + (let* ((out (assoc-ref outputs "out")) > + (pkg-config-dir (string-append out "/lib/pkgconfig"))) > + (mkdir-p pkg-config-dir) > + (with-output-to-file (string-append pkg-config-dir "/mad.pc") > + (lambda _ > + (format #t > + "prefix=~@*~a~@ > + libdir=${prefix}/lib~@ It seems to me that we shouldn’t provide .pc files if upstream doesn’t do it. The main reason is that developers who use Guix will come to rely on it and unknowingly write code that doesn’t work on other distros. (I remember pestering in the past as I stumbled upon packages who depended on some library as packaged by a specific distro. :-)) WDYT? Apologies if I missed an earlier discussion! Ludo’.
[-- Attachment #1: Type: text/plain, Size: 1474 bytes --] Hi Ludovic, > It seems to me that we shouldn’t provide .pc files if upstream doesn’t > do it. The main reason is that developers who use Guix will come to > rely on it and unknowingly write code that doesn’t work on other > distros. (I remember pestering in the past as I stumbled upon packages > who depended on some library as packaged by a specific distro. :-)) > > WDYT? > > Apologies if I missed an earlier discussion! No apologies needed, the discussion was minimal at best. This patch is the result of my yielding to the forces of incompatibility you mention. Major distributions like Debian, Arch Linux [1], and Fedora [2] have all added pkg- config files for (at least) libmad. Audacity expects to find pkg-config files for the system libraries it uses, so I supplied those to follow the path of least resistance. If there's a way to supply "-I" and "-L" flags directly somewhere in the build process as was done before, I'm not opposed to reverting these changes and modifying Audacity's package definition myself during the next update. I'll investigate some of our other CMake packages for possible inspiration. Thanks, Kei [0]: https://packages.debian.org/buster/amd64/libmad0-dev/filelist [1]: https://github.com/archlinux/svntogit-packages/blob/packages/libmad/trunk/libmad.patch [2]: https://koji.fedoraproject.org/koji/rpminfo?fileOrder=-name&rpmID=22388610&buildrootOrder=-id&buildrootStart=0#filelist [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 862 bytes --]
Hi Kei,
Kei <kkebreau@posteo.net> skribis:
>> It seems to me that we shouldn’t provide .pc files if upstream doesn’t
>> do it. The main reason is that developers who use Guix will come to
>> rely on it and unknowingly write code that doesn’t work on other
>> distros. (I remember pestering in the past as I stumbled upon packages
>> who depended on some library as packaged by a specific distro. :-))
>>
>> WDYT?
>>
>> Apologies if I missed an earlier discussion!
>
> No apologies needed, the discussion was minimal at best. This patch is the
> result of my yielding to the forces of incompatibility you mention. Major
> distributions like Debian, Arch Linux [1], and Fedora [2] have all added pkg-
> config files for (at least) libmad. Audacity expects to find pkg-config files
> for the system libraries it uses, so I supplied those to follow the path of
> least resistance.
Ah, that makes sense; it’s a case where I think it’s OK to follow the
majority.
Perhaps we can keep the .pc file for libmad, adding a comment mentioning
what you wrote above, but remove it in those cases where it’s not needed
(as in: not required by Audacity & co., and not done in other distros)?
Thanks,
Ludo’.
[-- Attachment #1: Type: text/plain, Size: 417 bytes --] Ludovic Courtès <ludo@gnu.org> writes: > Hi Kei, > > Perhaps we can keep the .pc file for libmad, adding a comment mentioning > what you wrote above, but remove it in those cases where it’s not needed > (as in: not required by Audacity & co., and not done in other distros)? > > Thanks, > Ludo’. This sounds good to me. I take this message as permission to push some changes with those comments? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 832 bytes --]
Hi,
Kei Kebreau <kkebreau@posteo.net> skribis:
> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Hi Kei,
>>
>> Perhaps we can keep the .pc file for libmad, adding a comment mentioning
>> what you wrote above, but remove it in those cases where it’s not needed
>> (as in: not required by Audacity & co., and not done in other distros)?
>>
>> Thanks,
>> Ludo’.
>
> This sounds good to me. I take this message as permission to push some
> changes with those comments?
Yes, sure! (And sorry for the delay…)
Ludo’.