diff options
| author | Joshua Watt <JPEWhacker@gmail.com> | 2024-05-23 12:26:54 -0600 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-06-03 07:47:04 +0100 |
| commit | 242be0888c80df082c7f19f2bce6afaaac095d7d (patch) | |
| tree | 737517f7a2dbffad88fddffdb486c297d393a8d5 /meta/lib | |
| parent | af6d28d2b0abdfcfa70edcc95abd99a3c1a64ac8 (diff) | |
| download | poky-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.py | 25 |
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 | ||
| 198 | TRANSLATE = ( | ||
| 199 | ("@", "@at@"), | ||
| 200 | (" ", "@space@"), | ||
| 201 | ("\t", "@tab@"), | ||
| 202 | ("[", "@openbrace@"), | ||
| 203 | ("]", "@closebrace@"), | ||
| 204 | ("_", "@underscore@"), | ||
| 205 | ) | ||
| 198 | 206 | ||
| 199 | def file_translate(file): | 207 | def 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 | |
| 214 | def 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 | ||
| 208 | def filedeprunner(arg): | 221 | def filedeprunner(arg): |
