mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 12:29:55 +00:00
classes: go-vendor: Change symlink creation.
Create missing directories required to create the symlink. Use relative symlinks to stay in the build directory scope (to avoid sstate issue with absolute paths). (From OE-Core rev: 6c4e3206b6537f714416688cf8c921dd21cdfc20) Signed-off-by: Alexander Yurkov <alexander.v.yurkov@gmail.com> Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
dc9fe7aa01
commit
cf221090ed
@@ -201,11 +201,15 @@ python do_go_vendor() {
|
|||||||
for vendored_name, replaced_path in replaced_paths.items():
|
for vendored_name, replaced_path in replaced_paths.items():
|
||||||
symlink_target = os.path.join(source_dir, *['src', go_import, replaced_path])
|
symlink_target = os.path.join(source_dir, *['src', go_import, replaced_path])
|
||||||
symlink_name = os.path.join(vendor_dir, vendored_name)
|
symlink_name = os.path.join(vendor_dir, vendored_name)
|
||||||
|
relative_symlink_target = os.path.relpath(symlink_target, os.path.dirname(symlink_name))
|
||||||
bb.debug(1, "vendored name %s, symlink name %s" % (vendored_name, symlink_name))
|
bb.debug(1, "vendored name %s, symlink name %s" % (vendored_name, symlink_name))
|
||||||
oe.path.relsymlink(symlink_target, symlink_name)
|
|
||||||
|
os.makedirs(os.path.dirname(symlink_name), exist_ok=True)
|
||||||
|
os.symlink(relative_symlink_target, symlink_name)
|
||||||
|
|
||||||
# Create a symlink to the actual directory
|
# Create a symlink to the actual directory
|
||||||
oe.path.relsymlink(vendor_dir, linkname)
|
relative_vendor_dir = os.path.relpath(vendor_dir, os.path.dirname(linkname))
|
||||||
|
os.symlink(relative_vendor_dir, linkname)
|
||||||
}
|
}
|
||||||
|
|
||||||
addtask go_vendor before do_patch after do_unpack
|
addtask go_vendor before do_patch after do_unpack
|
||||||
|
|||||||
Reference in New Issue
Block a user