diff options
author | Chris Larson <clarson@mvista.com> | 2010-01-22 10:00:20 -0700 |
---|---|---|
committer | Chris Larson <clarson@mvista.com> | 2010-01-22 10:00:20 -0700 |
commit | 09ff53d9270b09818d6478ddac768af807a55c3c (patch) | |
tree | 70359df0b2d37ebc99549cd8d306606c7549d229 /classes/amend.bbclass | |
parent | ccf4b50951463b7cb3e02f85ea1d366666721743 (diff) |
Lets rename conf/amend-recipes.inc to amend.bbclass, for consistency
Signed-off-by: Chris Larson <clarson@mvista.com>
Diffstat (limited to 'classes/amend.bbclass')
-rw-r--r-- | classes/amend.bbclass | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/classes/amend.bbclass b/classes/amend.bbclass new file mode 100644 index 0000000000..bcb93d4e75 --- /dev/null +++ b/classes/amend.bbclass @@ -0,0 +1,29 @@ +# Allows tweaks to be amended to a recipe via a .inc in its FILESPATH +# +# Simply drop amend.inc into an appropriate place in a recipe's FILESPATH and +# it'll be parsed in after the recipe itself is. +# +# Copyright (c) 2009 MontaVista Software, Inc. All rights reserved. +# +# Released under the MIT license (see LICENSE.MIT for the terms) + +python () { + import bb, os + + filespath = d.getVar("FILESPATH", 1).split(":") + amendfiles = [os.path.join(fpath, "amend.inc") + for fpath in filespath] + + # Adding all amend.incs that can exist to the __depends, to ensure that + # creating one of them invalidates the bitbake cache. Note that it + # requires a fix in bitbake. Without the bitbake fix, the cache will be + # completely invalidated on every bitbake execution. + depends = d.getVar("__depends", 0) or [] + d.setVar("__depends", depends + [(file, 0) for file in amendfiles if not os.path.exists(file)]) + + existing = (file for file in amendfiles if os.path.exists(file)) + try: + bb.parse.handle(existing.next(), d, 1) + except StopIteration: + pass +} |