summaryrefslogtreecommitdiffstats
path: root/meta/lib
diff options
context:
space:
mode:
authorJoshua Watt <JPEWhacker@gmail.com>2024-05-23 12:26:54 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-06-03 07:47:04 +0100
commit242be0888c80df082c7f19f2bce6afaaac095d7d (patch)
tree737517f7a2dbffad88fddffdb486c297d393a8d5 /meta/lib
parentaf6d28d2b0abdfcfa70edcc95abd99a3c1a64ac8 (diff)
downloadpoky-242be0888c80df082c7f19f2bce6afaaac095d7d.tar.gz
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>
Diffstat (limited to 'meta/lib')
-rw-r--r--meta/lib/oe/package.py25
1 files changed, 19 insertions, 6 deletions
diff --git a/meta/lib/oe/package.py b/meta/lib/oe/package.py
index 1511ba47c4..0fe49c00d6 100644
--- a/meta/lib/oe/package.py
+++ b/meta/lib/oe/package.py
@@ -195,14 +195,27 @@ def strip_execs(pn, dstdir, strip_cmd, libdir, base_libdir, max_process, qa_alre
195 195
196 oe.utils.multiprocess_launch_mp(runstrip, sfiles, max_process) 196 oe.utils.multiprocess_launch_mp(runstrip, sfiles, max_process)
197 197
198TRANSLATE = (
199 ("@", "@at@"),
200 (" ", "@space@"),
201 ("\t", "@tab@"),
202 ("[", "@openbrace@"),
203 ("]", "@closebrace@"),
204 ("_", "@underscore@"),
205)
198 206
199def file_translate(file): 207def file_translate(file):
200 ft = file.replace("@", "@at@") 208 ft = file
201 ft = ft.replace(" ", "@space@") 209 for s, replace in TRANSLATE:
202 ft = ft.replace("\t", "@tab@") 210 ft = ft.replace(s, replace)
203 ft = ft.replace("[", "@openbrace@") 211
204 ft = ft.replace("]", "@closebrace@") 212 return ft
205 ft = ft.replace("_", "@underscore@") 213
214def file_reverse_translate(file):
215 ft = file
216 for s, replace in reversed(TRANSLATE):
217 ft = ft.replace(replace, s)
218
206 return ft 219 return ft
207 220
208def filedeprunner(arg): 221def filedeprunner(arg):