mirror of
https://git.yoctoproject.org/poky
synced 2026-06-01 00:59:48 +00:00
lib: package: Add file_reverse_translate
Adds API to reverse the removal of special characters from file names so it can be correctly done in multiple places without open-coding it. Replace the translation done in the package_rpm.bbclass with the new API (From OE-Core rev: 4cb7e93c624987d146aaf626ce8e99568e938a70) 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>
This commit is contained in:
committed by
Richard Purdie
parent
af6d28d2b0
commit
242be0888c
@@ -38,6 +38,7 @@ def filter_nativesdk_deps(srcname, var):
|
|||||||
|
|
||||||
# Construct per file dependencies file
|
# Construct per file dependencies file
|
||||||
def write_rpm_perfiledata(srcname, d):
|
def write_rpm_perfiledata(srcname, d):
|
||||||
|
import oe.package
|
||||||
workdir = d.getVar('WORKDIR')
|
workdir = d.getVar('WORKDIR')
|
||||||
packages = d.getVar('PACKAGES')
|
packages = d.getVar('PACKAGES')
|
||||||
pkgd = d.getVar('PKGD')
|
pkgd = d.getVar('PKGD')
|
||||||
@@ -53,12 +54,7 @@ def write_rpm_perfiledata(srcname, d):
|
|||||||
key = "FILE" + varname + ":" + dfile + ":" + pkg
|
key = "FILE" + varname + ":" + dfile + ":" + pkg
|
||||||
deps = filter_nativesdk_deps(srcname, d.getVar(key) or "")
|
deps = filter_nativesdk_deps(srcname, d.getVar(key) or "")
|
||||||
depends_dict = bb.utils.explode_dep_versions(deps)
|
depends_dict = bb.utils.explode_dep_versions(deps)
|
||||||
file = dfile.replace("@underscore@", "_")
|
file = oe.package.file_reverse_translate(dfile)
|
||||||
file = file.replace("@closebrace@", "]")
|
|
||||||
file = file.replace("@openbrace@", "[")
|
|
||||||
file = file.replace("@tab@", "\t")
|
|
||||||
file = file.replace("@space@", " ")
|
|
||||||
file = file.replace("@at@", "@")
|
|
||||||
outfile.write('"' + pkgd + file + '" : "')
|
outfile.write('"' + pkgd + file + '" : "')
|
||||||
for dep in depends_dict:
|
for dep in depends_dict:
|
||||||
ver = depends_dict[dep]
|
ver = depends_dict[dep]
|
||||||
|
|||||||
+19
-6
@@ -195,14 +195,27 @@ def strip_execs(pn, dstdir, strip_cmd, libdir, base_libdir, max_process, qa_alre
|
|||||||
|
|
||||||
oe.utils.multiprocess_launch_mp(runstrip, sfiles, max_process)
|
oe.utils.multiprocess_launch_mp(runstrip, sfiles, max_process)
|
||||||
|
|
||||||
|
TRANSLATE = (
|
||||||
|
("@", "@at@"),
|
||||||
|
(" ", "@space@"),
|
||||||
|
("\t", "@tab@"),
|
||||||
|
("[", "@openbrace@"),
|
||||||
|
("]", "@closebrace@"),
|
||||||
|
("_", "@underscore@"),
|
||||||
|
)
|
||||||
|
|
||||||
def file_translate(file):
|
def file_translate(file):
|
||||||
ft = file.replace("@", "@at@")
|
ft = file
|
||||||
ft = ft.replace(" ", "@space@")
|
for s, replace in TRANSLATE:
|
||||||
ft = ft.replace("\t", "@tab@")
|
ft = ft.replace(s, replace)
|
||||||
ft = ft.replace("[", "@openbrace@")
|
|
||||||
ft = ft.replace("]", "@closebrace@")
|
return ft
|
||||||
ft = ft.replace("_", "@underscore@")
|
|
||||||
|
def file_reverse_translate(file):
|
||||||
|
ft = file
|
||||||
|
for s, replace in reversed(TRANSLATE):
|
||||||
|
ft = ft.replace(replace, s)
|
||||||
|
|
||||||
return ft
|
return ft
|
||||||
|
|
||||||
def filedeprunner(arg):
|
def filedeprunner(arg):
|
||||||
|
|||||||
Reference in New Issue
Block a user