Re: 02/05: gnu: libmad: Install pkg-config file.

2021-01-14 Thread Ludovic Courtès
Hi,

Kei Kebreau  skribis:

> Ludovic Courtès  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’.



Re: 02/05: gnu: libmad: Install pkg-config file.

2021-01-06 Thread Kei Kebreau
Ludovic Courtès  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?


signature.asc
Description: PGP signature


Re: 02/05: gnu: libmad: Install pkg-config file.

2021-01-06 Thread Ludovic Courtès
Hi Kei,

Kei  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’.



Re: 02/05: gnu: libmad: Install pkg-config file.

2021-01-04 Thread Kei
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=22388610=-id=0#filelist


signature.asc
Description: This is a digitally signed message part


Re: 02/05: gnu: libmad: Install pkg-config file.

2021-01-04 Thread Ludovic Courtès
Hi Kei,

guix-comm...@gnu.org skribis:

> commit 83afa4e9a6aa4dc69f86651d795007dc96a31e64
> Author: Kei Kebreau 
> 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’.