summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorLuca Boccassi <bluca@debian.org>2021-05-23 13:04:53 +0100
committerLuca Boccassi <luca.boccassi@microsoft.com>2021-05-25 12:59:26 +0100
commitc5fd89adcde0b6e954000328471336ec8e7a0c69 (patch)
tree5a5dcc4bb5957472a791499673c1e729794a6f77 /tools
parent936cfad7e570f23655c18e29f82901bd42cc442a (diff)
downloadsystemd-c5fd89adcde0b6e954000328471336ec8e7a0c69.tar.gz
core: make libbpf a dlopen() dependency
Diffstat (limited to 'tools')
-rwxr-xr-xtools/build-bpf-skel.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/tools/build-bpf-skel.py b/tools/build-bpf-skel.py
index 5506fdd875..b28766fa64 100755
--- a/tools/build-bpf-skel.py
+++ b/tools/build-bpf-skel.py
@@ -4,6 +4,7 @@
import argparse
import logging
import pathlib
+import re
import subprocess
import sys
@@ -59,7 +60,11 @@ def gen_bpf_skeleton(bpftool_exec, in_file, out_fd):
logging.debug('Generating BPF skeleton:')
logging.debug('{}'.format(' '.join(bpftool_args)))
- subprocess.check_call(bpftool_args, stdout=out_fd)
+ skel = subprocess.check_output(bpftool_args, universal_newlines=True)
+ # libbpf is used via dlopen(), so rename symbols as defined
+ # in src/shared/bpf-dlopen.h
+ skel = re.sub(r'(bpf_object__\w+_skeleton)', r'sym_\1', skel)
+ out_fd.write(skel)
def bpf_build(args):