diff options
Diffstat (limited to 'scripts/lib/devtool/standard.py')
| -rw-r--r-- | scripts/lib/devtool/standard.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index 34de7bd623..e4d2a57ab6 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py | |||
| @@ -674,6 +674,29 @@ def _extract_source(srctree, keep_temp, devbranch, sync, d): | |||
| 674 | 674 | ||
| 675 | shutil.move(srcsubdir, srctree) | 675 | shutil.move(srcsubdir, srctree) |
| 676 | 676 | ||
| 677 | if os.path.abspath(d.getVar('S', True)) == os.path.abspath(d.getVar('WORKDIR', True)): | ||
| 678 | # If recipe extracts to ${WORKDIR}, symlink the files into the srctree | ||
| 679 | # (otherwise the recipe won't build as expected) | ||
| 680 | local_files_dir = os.path.join(srctree, 'oe-local-files') | ||
| 681 | addfiles = [] | ||
| 682 | for root, _, files in os.walk(local_files_dir): | ||
| 683 | relpth = os.path.relpath(root, local_files_dir) | ||
| 684 | if relpth != '.': | ||
| 685 | bb.utils.mkdirhier(os.path.join(srctree, relpth)) | ||
| 686 | for fn in files: | ||
| 687 | if fn == '.gitignore': | ||
| 688 | continue | ||
| 689 | destpth = os.path.join(srctree, relpth, fn) | ||
| 690 | if os.path.exists(destpth): | ||
| 691 | os.unlink(destpth) | ||
| 692 | os.symlink('oe-local-files/%s' % fn, destpth) | ||
| 693 | addfiles.append(os.path.join(relpth, fn)) | ||
| 694 | if addfiles: | ||
| 695 | bb.process.run('git add %s' % ' '.join(addfiles), cwd=srctree) | ||
| 696 | useroptions = [] | ||
| 697 | oe.patch.GitApplyTree.gitCommandUserOptions(useroptions, d=d) | ||
| 698 | bb.process.run('git %s commit -a -m "Committing local file symlinks\n\n%s"' % (' '.join(useroptions), oe.patch.GitApplyTree.ignore_commit_prefix), cwd=srctree) | ||
| 699 | |||
| 677 | if kconfig: | 700 | if kconfig: |
| 678 | logger.info('Copying kernel config to srctree') | 701 | logger.info('Copying kernel config to srctree') |
| 679 | shutil.copy2(kconfig, srctree) | 702 | shutil.copy2(kconfig, srctree) |
