pkg-config --cflags will always add private dependency #114
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
ref:
https://bugzilla.redhat.com/show_bug.cgi?id=1422256
With
https://github.com/pkgconf/pkgconf/blob/master/main.c#L1139
pkg-config --cflags will always adds private dependency, which is not desired.
Perhaps changed with the commit
7b39c38408
, I think the line above is not intended change.Especially the change:
7b39c38408 (diff-2045016cb90d1e65d71c2407a2570927R1084)
I think this is not a bug:
If any of Requires.private doesn't exist (and you don;t use them) it seems like bug in upstream rather than in pkgconf...
--libs
behaves correctly. Here we say--cflags
behavior.Well, I don't understand what you are saying here.
Requires.private
must be used when used with--static
flags appended, but must not for usual--libs
or--cflags
Changing that causes 3 testsuite failures. I need to dissect those failures.
I am not sure this is a bug actually. Observe with freedesktop's implementation:
To expand on this -- at the very least, it is not a regression. We could argue it is still suboptimal behaviour (or at least unobvious), and I would tend to agree.
Requires.private
is not strictly actually about--static
, it is meant to be a list of dependent SDKs that are not directly required by the end user but still needed to build against. For CFLAGS, this means thatRequires.private
should be considered. If anything, the error message should likely be improved to clarify if it is a private dependency or not, and then more appropriate advice could be given. There is also freedesktop bug 4378 that documents some other quirkyness.For now, we will reject this bug, but we should look into making Requires.private more flexible in the future.