[OE-core] [PATCH] devtool: modify command fails to ignore source files

Paul Eggleton paul.eggleton at linux.intel.com
Sun Oct 2 22:40:04 UTC 2016


Hi Stephano,

Thanks for looking into this, a few things:

On Sun, 02 Oct 2016 13:55:06 Stephano Cetola wrote:
> With recent changes to recipeutils, the list of local files returned
> by get_recipe_local_files could possibly include source files. This
> only happens when the recipe contains a SRC_URI using subdir= to put
> files in the source tree. These files should be ignored when
> populating the list of local files for oe-local-files directory.

You should include "Fixes [YOCTO #10326]." here. Also, if a patch fixes a 
regression that we've been able to track down, as part of the commit message I 
like to mention which revision caused it, and in this case it would be 
OE-Core revision 9069fef5dad5a873c8a8f720f7bcbc7625556309.

> Signed-off-by: Stephano Cetola <stephano.cetola at linux.intel.com>
> ---
>  scripts/lib/devtool/standard.py | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/lib/devtool/standard.py
> b/scripts/lib/devtool/standard.py index 8319145..c7a5712 100644
> --- a/scripts/lib/devtool/standard.py
> +++ b/scripts/lib/devtool/standard.py
> @@ -568,8 +568,12 @@ def _extract_source(srctree, keep_temp, devbranch,
> sync, d): recipe_patches = [os.path.basename(patch) for patch in
>                            oe.recipeutils.get_recipe_patches(crd)]
>          local_files = oe.recipeutils.get_recipe_local_files(crd)
> +
> +        # Ignore local files with subdir={BP}
> +        srcdirname = os.path.basename(os.path.normpath(srcsubdir))
>          local_files = [fname for fname in local_files if
> -                       os.path.exists(os.path.join(workdir, fname))]
> +                       os.path.exists(os.path.join(workdir, fname)) and
> +                       srcdirname not in fname]

This seems likely to false-trigger quite easily - you're only looking for the 
basename and whether it appears anywhere in the path rather than at the start. 
I'd suggest getting the absolute path to the source directory and check if it 
starts with that (I think that's how I dealt with that elsewhere).

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the Openembedded-core mailing list