[oe] RFC: thinking about DEPENDS properties
Robert Schuster
theBohemian at gmx.net
Tue Jan 27 11:07:18 UTC 2009
Hi,
today I was thinking about some missing semantics in OE's DEPENDS
variable and had the idea of reusing the way we write SRC_URI entries
for them.
The issues:
1) Strong dependencies
Some recipes have a strong dependency on another recipe. Take llvm as an
example. llvm puts a bunch of static libraries (.a) and object code
files into staging which another program links to. So, if llvm is
recompiled (e.g. changed CFLAGS or applied a patch) those having a
dependency on llvm should be recompiled as well.
In order to express this, I would write:
DEPENDS += "llvm;strong=true"
2) Minimum & Maximum supported versions
Some recipes cannot be built with certain versions of other recipes.
DEPENDS += "automake-native;minver=1.10"
If the distro uses a lower automake version OE should error out when
someone tries to build that recipe:
ERROR: Recipe 'foo' needs at least 'automake-native 1.10' but
'PREFERRED_VERSION_automake-native' is set to '1.9.6'.
--
I know this brings in a lot of complicated things to think about, e.g.
what is the result of:
foo.inc: DEPENDS = "bar;minver=0.8;maxver=0.9"
foo_1.0: require foo.inc
DEPENDS += "bar;minver=1.0"
Perhaps to many components in OE already expect DEPENDS to be a
whitespace separated list of words and we should be add another variable
whose only purpose is to set properties for existing DEPENDS entries:
foo_1.0:
require foo.inc
# Replaces value from foo.inc
DEPENDSPROPS = "bar;minver=1.0"
--
My main concern is that the knowledge about which recipe can live in
harmony with another is currently implicit. There is no way to express
this except by writing a comment (which is almost never done).
Regards
Robert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20090127/4b3cd7ff/attachment-0002.sig>
More information about the Openembedded-devel
mailing list