Bug 47996 - Feature-Request: Cflags.private
Summary: Feature-Request: Cflags.private
Status: NEW
Alias: None
Product: pkg-config
Classification: Unclassified
Component: src (show other bugs)
Version: unspecified
Hardware: All All
: medium enhancement
Assignee: Tollef Fog Heen
QA Contact:
Depends on: 63747
  Show dependency treegraph
Reported: 2012-03-28 04:01 UTC by Volker Grabsch
Modified: 2013-08-23 17:06 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Note You need to log in before you can comment on or make changes to this bug.
Description Volker Grabsch 2012-03-28 04:01:03 UTC
The Libs.private setting is a very handy way to handle static as well as shared library builds.

However, when (cross-)compiling for the Windows platform, this is not sufficient. The libraries need extra "dllexport" declarations in the headers when building a shared library. Those can usually be suppressed (for static linking) by something like -DTHISLIBRARY_STATIC. It would avoid lots of nasty code if "pkg-config --cflags" could take care of that. It might be as simple as:


Would you accept a patch that implements this feature?

See also:

Comment 1 Dan Nicholson 2013-04-20 01:53:35 UTC
I think this makes sense. However, I'm uneasy about adding new metadata fields since we currently have no mechanism to signal that a newer pkg-config is needed to parse the .pc file. In other words, this would break when users have an older pkg-config.

I've opened bug63747 to track writing a spec for the current metadata syntax to open the doors for extending it. I've made this bug blocked by it.
Comment 2 Volker Grabsch 2013-08-23 17:06:07 UTC
For your information: We, the MXE project, are no longer interested in adding the Cflags.private feature to pkg-config. Instead, we switched from pkg-config to pkgconf:


Best Regards,

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.