[OE-core] [poky] -dev RPM packages Require:ing all of their bitbake build dependences

Mark Hatle mark.hatle at windriver.com
Wed Jan 4 16:40:26 UTC 2012


On 1/4/12 10:34 AM, Chris Larson wrote:
> On Wed, Jan 4, 2012 at 9:23 AM, Richard Purdie
> <richard.purdie at linuxfoundation.org>  wrote:
>>> Another approach would be to stop injecting -dev Requires by default.  I
>>> imagine this was done to handle the case of library A whose headers
>>> require library B.  However, a saner way to handle this I think is
>>> simply to push people to use pkg-config; IIRC a script exists to extract
>>> pkg-config dependencies from the .pc files and use that for the RPM
>>> auto-dependency phase.  That would ensure that e.g. gtk+-dev Requires:
>>> glib-dev.  This doesn't help non-pkg-config libraries, but those people
>>> should be shamed anyways =)
>>
>> I think these dependencies are wrong and need revisiting. Currently,
>> -dev and -dbg packages share the same code and its tilted more in favour
>> of -dbg than it is for -dev.
>>
>> I think the -dev packages make sense if you want to build X but not
>> build something that just depends on X. We should therefore move the
>> dependencies to a new package (need a good name) and rethink the -dev
>> package dependencies.
>
>
> I'm inclined to say let the user install the deps needed to build X
> themselves, or build it with bitbake, and let -dev work the way it
> does in other distros, the bits needed to build against X.

Ya, that seems to be the best solution for a more modern system.

This will require a combination of additional automatic dependency detection and 
also manual intervention when that detection isn't complete.

The complications with the automatic detection are around the header files... 
we'll need to detect when one header includes another, and then translate that 
to an associated -dev file.  But I know there are intentionally broken includes 
(wrapped in #if's etc..)

--Mark




More information about the Openembedded-core mailing list