Rex Dieter wrote on Thu, Aug 02, 2018 at 08:37:34AM -0500:
> > Wearing a lib developer hat, I don't see how you can make a .pc that
> > doesn't overlink if you provide something a bit entangled with other
> > libs.
> > The problem is that if your headers use any sub-lib type you need to add
> > that lib in Requires: so that --cflags will pull that lib's include
> > path;
> 
> That's what Requires.private is for

I'm aware of Requires.private, but that's not how I understand things
currently work.
man pc(5) says this for Requires and Requires.private:
---
Requires
Required dependencies that must be met for the package to be usable.
All dependencies must be satisfied or the pkg-config implementation must
not use the package.  (optional; dependency list)

Requires.private
Required dependencies that must be met for the package to be usable for
static linking.  All dependencies must be satisfied or the pkg-config
implementation must not use the package for static linking.  (optional;
dependency list)
---

I'm not sure I see how that would be related to what is used for
compiling and what is used for linking.

In practice, `pkg-config --cflags foo` will only fetch cflags for
dependencies listed in Requires, not Requires.private
I haven't tested how autotools/libtool handle this but I doubt it's
much different than invoking pkg-config manually, and at least meson
will only add cflags for dependencies put in 'Requires' as I would have
expected.


Am I missing something?

-- 
Dominique Martinet
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/ULSIOZQG7E2RBY2OOEXPAPSCAZINRTUM/

Reply via email to