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.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20230406080045.21696-1-thomas.de_schampheleire@nokia.com>
This commit is contained in:
Thomas De Schampheleire 2023-04-06 10:00:45 +02:00 committed by Stefan Hajnoczi
parent fdd5e90fdb
commit 9d672e2904
3 changed files with 9 additions and 3 deletions

View file

@ -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)

View file

@ -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)

View file

@ -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)