[swift-evolution] Draft Proposal SwiftPM System Module Search Paths

Max Howell max.howell at apple.com
Thu Apr 7 11:34:07 CDT 2016

>>> I don't see that information in the man page (also, I am not familiar enough with pkg-config to know how results described in that man page translate to other systems).
>>> Specifically, that man page does not seem to document where on disk the .pc files live. How are we going to know that?
>>> For example, one on random VM I have lying about I see .pc files here:
>>> --
>>> /# find / -name \*.pc | xargs dirname | sort | uniq
>>> /usr/lib/pkgconfig
>>> /usr/lib/x86_64-linux-gnu/pkgconfig
>>> /usr/lib/x86_64-linux-gnu/pkgconfig/mit-krb5
>>> /usr/share/pkgconfig
>>> --
>>> and the pkg-config tool appears to be able to find results from all of those. How would we know those directory names if we don't have a dependency on the actual tool?
>> There is a config file and an environment variable.
>> Do you need me to document them completely so that we can move forward with this?
> No, not at all, I think the proposal makes complete sense and should be moved along.
> Nevertheless, I still want to understand how it will work... I might be missing some information from the man page but I just don't see where this is described. It *looks* to me like the default search list is hard coded into the tool.

Best docs I have found are: https://people.freedesktop.org/~dbn/pkg-config-guide.html


The std path is /usr/lib/pkg-config and /usr/share/pkg-config, this can be supplemented by an env var PKG_CONFIG_PATH

It is common for system packagers to add more paths. Eg. brew does this, I coded it myself.

This is fine, because the additional paths can only be queried by a custom configured pkg-config, and in such cases we can just ask the custom configured pkg-config, if it’s there, there may be more paths, if it’s not then there cannot.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160407/689d4a49/attachment.html>

More information about the swift-evolution mailing list