mirror of
https://git.yoctoproject.org/poky
synced 2026-09-19 18:49:32 +02:00
externalsrc: Hide created symlinks with .git/info/exclude
Add created symlinks to the exclude file. This will both make them less distracting and hide them from the srctree_hash_files function. (From OE-Core rev: c11fcd6fbde4a90913960b223451e0ce9e6b4b64) Signed-off-by: Ola x Nilsson <olani@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
2313a77d84
commit
2e77eff6cc
@@ -124,11 +124,13 @@ python () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
python externalsrc_configure_prefunc() {
|
python externalsrc_configure_prefunc() {
|
||||||
|
s_dir = d.getVar('S')
|
||||||
# Create desired symlinks
|
# Create desired symlinks
|
||||||
symlinks = (d.getVar('EXTERNALSRC_SYMLINKS') or '').split()
|
symlinks = (d.getVar('EXTERNALSRC_SYMLINKS') or '').split()
|
||||||
|
newlinks = []
|
||||||
for symlink in symlinks:
|
for symlink in symlinks:
|
||||||
symsplit = symlink.split(':', 1)
|
symsplit = symlink.split(':', 1)
|
||||||
lnkfile = os.path.join(d.getVar('S'), symsplit[0])
|
lnkfile = os.path.join(s_dir, symsplit[0])
|
||||||
target = d.expand(symsplit[1])
|
target = d.expand(symsplit[1])
|
||||||
if len(symsplit) > 1:
|
if len(symsplit) > 1:
|
||||||
if os.path.islink(lnkfile):
|
if os.path.islink(lnkfile):
|
||||||
@@ -140,6 +142,19 @@ python externalsrc_configure_prefunc() {
|
|||||||
# File/dir exists with same name as link, just leave it alone
|
# File/dir exists with same name as link, just leave it alone
|
||||||
continue
|
continue
|
||||||
os.symlink(target, lnkfile)
|
os.symlink(target, lnkfile)
|
||||||
|
newlinks.append(symsplit[0])
|
||||||
|
# Hide the symlinks from git
|
||||||
|
try:
|
||||||
|
git_exclude_file = os.path.join(s_dir, '.git/info/exclude')
|
||||||
|
if os.path.exists(git_exclude_file):
|
||||||
|
with open(git_exclude_file, 'r+') as efile:
|
||||||
|
elines = efile.readlines()
|
||||||
|
for link in newlinks:
|
||||||
|
if link in elines or '/'+link in elines:
|
||||||
|
continue
|
||||||
|
efile.write('/' + link + '\n')
|
||||||
|
except IOError as ioe:
|
||||||
|
bb.note('Failed to hide EXTERNALSRC_SYMLINKS from git')
|
||||||
}
|
}
|
||||||
|
|
||||||
python externalsrc_compile_prefunc() {
|
python externalsrc_compile_prefunc() {
|
||||||
|
|||||||
Reference in New Issue
Block a user