[Xcb] [PATCH 0/3] Fix intra-xcb .pc file dependencies automatically
Keith Packard
keithp at keithp.com
Wed Feb 12 14:15:43 PST 2014
> However, I don't like the result. composite.xml "<import>"s only xproto and
> xfixes. The dependency on render and shape occur because xfixes depends on
> these. In other words, your tool is including transitive dependencies.
I've patched that by fixing xcb to only #include files for direct
dependencies. The transitive #include set will still include all of
the dependencies, of course. That's the first patch in this
series. This should also lead to a (trivial) compile time improvement
as we we'll process the nested header files fewer times.
This (obviously) requires a separate patch to the xcb proto files,
which I've already sent under separate cover. That patch simply adds
the direct_import field needed by this patch and must be applied
first. "Also track directly imported modules in a separate list"
[PATCH 1/3] Only #include directly referenced module header files
> (Also, your tool will (silently) fail with out-of-tree builds, because either
> the .pc.in or the src/*.h files can't be found. I guess automake runs tests in
> the build dir, but I am not sure. And I don't care a lot about this issue since
> the script is already complicated enough).
I've fixed that in this updated patch:
[PATCH 2/3] Validate .pc file Requires lines
Finally, you'll see that the .pc files require only a few changes now
that they don't include the transitive closure of dependencies
[PATCH 3/3] Update .pc file Requires lines to express full
-keith
More information about the Xcb
mailing list