mirror of
https://github.com/systemd/systemd
synced 2024-10-15 04:24:19 +00:00
test-lib*-sym: print symbols names in addition to addresses
This makes it easier to see what the test is doing. I converted the code to use f-strings. They are already used in other scripts necessary for build, so IIUC this is OK.
This commit is contained in:
parent
3e4f1dc9d9
commit
42d824dee3
|
@ -11,21 +11,26 @@ print('''
|
|||
/* We want to check deprecated symbols too, without complaining */
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
|
||||
const void* symbols[] = {''')
|
||||
const struct {
|
||||
const char *name;
|
||||
const void *symbol;
|
||||
} symbols[] = {''')
|
||||
|
||||
count = 0
|
||||
for line in open(sys.argv[1]):
|
||||
match = re.search('^ +([a-zA-Z0-9_]+);', line)
|
||||
if match:
|
||||
s = match.group(1)
|
||||
if s == 'sd_bus_object_vtable_format':
|
||||
print(' &{},'.format(s))
|
||||
print(f' {{"{s}", &{s}}},')
|
||||
else:
|
||||
print(' {},'.format(s))
|
||||
print(f' {{"{s}", {s}}},')
|
||||
count += 1
|
||||
|
||||
print('''};
|
||||
print(f'''}};
|
||||
|
||||
int main(void) {
|
||||
for (size_t i = 0; i < sizeof(symbols)/sizeof(void*); i++)
|
||||
printf("%p\\n", symbols[i]);
|
||||
int main(void) {{
|
||||
for (size_t i = 0; i < {count}; i++)
|
||||
printf("%p: %s\\n", symbols[i].symbol, symbols[i].name);
|
||||
return 0;
|
||||
}''')
|
||||
}}''')
|
||||
|
|
Loading…
Reference in a new issue