diff options
-rw-r--r-- | meta/classes/devtool-source.bbclass | 6 | ||||
-rw-r--r-- | meta/classes/kernel-yocto.bbclass | 4 | ||||
-rw-r--r-- | meta/lib/oe/recipeutils.py | 9 |
3 files changed, 14 insertions, 5 deletions
diff --git a/meta/classes/devtool-source.bbclass b/meta/classes/devtool-source.bbclass index 1372e32c9e..a8110006fb 100644 --- a/meta/classes/devtool-source.bbclass +++ b/meta/classes/devtool-source.bbclass | |||
@@ -103,8 +103,10 @@ python devtool_post_unpack() { | |||
103 | for l in sccfile: | 103 | for l in sccfile: |
104 | line = l.split() | 104 | line = l.split() |
105 | if line and line[0] in ('kconf', 'patch'): | 105 | if line and line[0] in ('kconf', 'patch'): |
106 | local_files[line[-1]] = os.path.join(os.path.dirname(local_files[key]), line[-1]) | 106 | cfg = os.path.join(os.path.dirname(local_files[key]), line[-1]) |
107 | shutil.copy2(os.path.join(os.path.dirname(local_files[key]), line[-1]), workdir) | 107 | if not cfg in local_files.values(): |
108 | local_files[line[-1]] = cfg | ||
109 | shutil.copy2(cfg, workdir) | ||
108 | sccfile.close() | 110 | sccfile.close() |
109 | 111 | ||
110 | # Ignore local files with subdir={BP} | 112 | # Ignore local files with subdir={BP} |
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 496c8a7f68..2f556ca03b 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass | |||
@@ -138,10 +138,10 @@ do_kernel_metadata() { | |||
138 | for f in ${feat_dirs}; do | 138 | for f in ${feat_dirs}; do |
139 | if [ -d "${WORKDIR}/$f/meta" ]; then | 139 | if [ -d "${WORKDIR}/$f/meta" ]; then |
140 | includes="$includes -I${WORKDIR}/$f/kernel-meta" | 140 | includes="$includes -I${WORKDIR}/$f/kernel-meta" |
141 | elif [ -d "${WORKDIR}/$f" ]; then | ||
142 | includes="$includes -I${WORKDIR}/$f" | ||
143 | elif [ -d "${WORKDIR}/../oe-local-files/$f" ]; then | 141 | elif [ -d "${WORKDIR}/../oe-local-files/$f" ]; then |
144 | includes="$includes -I${WORKDIR}/../oe-local-files/$f" | 142 | includes="$includes -I${WORKDIR}/../oe-local-files/$f" |
143 | elif [ -d "${WORKDIR}/$f" ]; then | ||
144 | includes="$includes -I${WORKDIR}/$f" | ||
145 | fi | 145 | fi |
146 | done | 146 | done |
147 | for s in ${sccs} ${patches}; do | 147 | for s in ${sccs} ${patches}; do |
diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py index 8f70d2eb21..4ca200d834 100644 --- a/meta/lib/oe/recipeutils.py +++ b/meta/lib/oe/recipeutils.py | |||
@@ -482,7 +482,14 @@ def get_recipe_local_files(d, patches=False, archives=False): | |||
482 | unpack = fetch.ud[uri].parm.get('unpack', True) | 482 | unpack = fetch.ud[uri].parm.get('unpack', True) |
483 | if unpack: | 483 | if unpack: |
484 | continue | 484 | continue |
485 | ret[fname] = localpath | 485 | if os.path.isdir(localpath): |
486 | for root, dirs, files in os.walk(localpath): | ||
487 | for fname in files: | ||
488 | fileabspath = os.path.join(root,fname) | ||
489 | srcdir = os.path.dirname(localpath) | ||
490 | ret[os.path.relpath(fileabspath,srcdir)] = fileabspath | ||
491 | else: | ||
492 | ret[fname] = localpath | ||
486 | return ret | 493 | return ret |
487 | 494 | ||
488 | 495 | ||