diff options
author | Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> | 2023-04-04 20:34:03 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-04-05 17:26:46 +0100 |
commit | 85e30c507b63fa9126887dc6435d1ee6e23bd887 (patch) | |
tree | 3ea16e7f2d37f824ce0d676dc85cea1af15f8acb /meta | |
parent | 5feb065f1b1aaf218f71cc9d31a9251b139b9442 (diff) | |
download | openembedded-core-contrib-85e30c507b63fa9126887dc6435d1ee6e23bd887.tar.gz |
qemu: make tracetool-generated output reproducible
'#line' directives written by qemu's tracetool makes the 'debug' package not
reproducible due to absolute paths. Apply a patch to use a relative path
instead.
Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-devtools/qemu/qemu.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch | 87 |
2 files changed, 88 insertions, 0 deletions
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc index b41055fe5d..36b2f14638 100644 --- a/meta/recipes-devtools/qemu/qemu.inc +++ b/meta/recipes-devtools/qemu/qemu.inc @@ -32,6 +32,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://0001-configure-Fix-check-tcg-not-executing-any-tests.patch \ file://0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch \ file://0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch \ + file://0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch \ file://qemu-guest-agent.init \ file://qemu-guest-agent.udev \ " diff --git a/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch b/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch new file mode 100644 index 0000000000..5ef1184e3c --- /dev/null +++ b/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch @@ -0,0 +1,87 @@ +From 348ea441db84a211d4fca7ef5544b5cd06a8a872 Mon Sep 17 00:00:00 2001 +From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> +Date: Tue, 4 Apr 2023 15:26:07 +0200 +Subject: [PATCH] tracetool: use relative paths for '#line' preprocessor + directives + +The event filename is an absolute path. Convert it to a relative path when +writing '#line' directives, to preserve reproducibility of the generated +output when different base paths are used. + +Upstream-Status: Pending + +--- + scripts/tracetool/backend/ftrace.py | 4 +++- + scripts/tracetool/backend/log.py | 4 +++- + scripts/tracetool/backend/syslog.py | 4 +++- + 3 files changed, 9 insertions(+), 3 deletions(-) + +diff --git a/scripts/tracetool/backend/ftrace.py b/scripts/tracetool/backend/ftrace.py +index 5fa30ccc08..baed2ae61c 100644 +--- a/scripts/tracetool/backend/ftrace.py ++++ b/scripts/tracetool/backend/ftrace.py +@@ -12,6 +12,8 @@ + __email__ = "stefanha@redhat.com" + + ++import os.path ++ + from tracetool import out + + +@@ -45,7 +47,7 @@ def generate_h(event, group): + args=event.args, + event_id="TRACE_" + event.name.upper(), + event_lineno=event.lineno, +- event_filename=event.filename, ++ event_filename=os.path.relpath(event.filename), + fmt=event.fmt.rstrip("\n"), + argnames=argnames) + +diff --git a/scripts/tracetool/backend/log.py b/scripts/tracetool/backend/log.py +index 17ba1cd90e..de27b7e62e 100644 +--- a/scripts/tracetool/backend/log.py ++++ b/scripts/tracetool/backend/log.py +@@ -12,6 +12,8 @@ + __email__ = "stefanha@redhat.com" + + ++import os.path ++ + from tracetool import out + + +@@ -53,7 +55,7 @@ def generate_h(event, group): + ' }', + cond=cond, + event_lineno=event.lineno, +- event_filename=event.filename, ++ event_filename=os.path.relpath(event.filename), + name=event.name, + fmt=event.fmt.rstrip("\n"), + argnames=argnames) +diff --git a/scripts/tracetool/backend/syslog.py b/scripts/tracetool/backend/syslog.py +index 5a3a00fe31..012970f6cc 100644 +--- a/scripts/tracetool/backend/syslog.py ++++ b/scripts/tracetool/backend/syslog.py +@@ -12,6 +12,8 @@ + __email__ = "stefanha@redhat.com" + + ++import os.path ++ + from tracetool import out + + +@@ -41,7 +43,7 @@ def generate_h(event, group): + ' }', + cond=cond, + event_lineno=event.lineno, +- event_filename=event.filename, ++ event_filename=os.path.relpath(event.filename), + name=event.name, + fmt=event.fmt.rstrip("\n"), + argnames=argnames) +-- +2.39.2 + |