diff options
author | Joshua Watt <JPEWhacker@gmail.com> | 2023-12-20 11:01:02 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-12-23 08:46:00 +0000 |
commit | 72b6728f82419c62e708fd5093ca8ef97859db38 (patch) | |
tree | e71fb5d2a3f190821d8142c70e827632c39c3d3b /meta/lib | |
parent | a22f7d7b533c14c52275f7081627700084527c01 (diff) | |
download | poky-72b6728f82419c62e708fd5093ca8ef97859db38.tar.gz |
lib/packagedata.py: Fix broken symlinks for providers with a '/'
If a package had a provider with a '/' in it (e.g. "/bin/sh",
"/bin/bash", etc.), the generated symlinks were broken due to being at a
hard coded depth. Use oe.path.relsymlink() instead to make a correct
relative symbolic link
(From OE-Core rev: 8b1482a4e2adb7cf358d638265cf116b34078b84)
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib')
-rw-r--r-- | meta/lib/oe/packagedata.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/meta/lib/oe/packagedata.py b/meta/lib/oe/packagedata.py index 162ff60d72..d59f6f5a56 100644 --- a/meta/lib/oe/packagedata.py +++ b/meta/lib/oe/packagedata.py | |||
@@ -317,7 +317,7 @@ fi | |||
317 | for p in bb.utils.explode_deps(rprov): | 317 | for p in bb.utils.explode_deps(rprov): |
318 | subdata_sym = pkgdatadir + "/runtime-rprovides/%s/%s" % (p, pkg) | 318 | subdata_sym = pkgdatadir + "/runtime-rprovides/%s/%s" % (p, pkg) |
319 | bb.utils.mkdirhier(os.path.dirname(subdata_sym)) | 319 | bb.utils.mkdirhier(os.path.dirname(subdata_sym)) |
320 | oe.path.symlink("../../runtime/%s" % pkg, subdata_sym, True) | 320 | oe.path.relsymlink(subdata_file, subdata_sym, True) |
321 | 321 | ||
322 | allow_empty = d.getVar('ALLOW_EMPTY:%s' % pkg) | 322 | allow_empty = d.getVar('ALLOW_EMPTY:%s' % pkg) |
323 | if not allow_empty: | 323 | if not allow_empty: |
@@ -328,7 +328,7 @@ fi | |||
328 | if g or allow_empty == "1": | 328 | if g or allow_empty == "1": |
329 | # Symlinks needed for reverse lookups (from the final package name) | 329 | # Symlinks needed for reverse lookups (from the final package name) |
330 | subdata_sym = pkgdatadir + "/runtime-reverse/%s" % pkgval | 330 | subdata_sym = pkgdatadir + "/runtime-reverse/%s" % pkgval |
331 | oe.path.symlink("../runtime/%s" % pkg, subdata_sym, True) | 331 | oe.path.relsymlink(subdata_file, subdata_sym, True) |
332 | 332 | ||
333 | packagedfile = pkgdatadir + '/runtime/%s.packaged' % pkg | 333 | packagedfile = pkgdatadir + '/runtime/%s.packaged' % pkg |
334 | open(packagedfile, 'w').close() | 334 | open(packagedfile, 'w').close() |