]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
meson: Define __TARGET_ARCH macros required by bpf
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Tue, 2 Jul 2024 15:50:57 +0000 (17:50 +0200)
committerLuca Boccassi <luca.boccassi@gmail.com>
Tue, 2 Jul 2024 23:16:35 +0000 (01:16 +0200)
These are required by the bpf_tracing.h header in libbpf, see
https://github.com/libbpf/libbpf/blob/master/src/bpf_tracing.h.

bpf_tracing.h does have a few fallbacks in case __TARGET_ARCH_XXX
is not defined but recommends using the __TARGET_ARCH macros instead
so let's do that.

meson.build

index 8db73ec996ceb28cafa6d85c2cfb1d6b910f6f40..15bb11ecd494174e0cb2fd28d2c8822a67cdc0b3 100644 (file)
@@ -1762,15 +1762,15 @@ if conf.get('BPF_FRAMEWORK') == 1
         # C.f. https://mesonbuild.com/Reference-tables.html#cpu-families
         # and src/basic/missing_syscall_def.h.
         cpu_arch_defines = {
-                'ppc'     : ['-D__powerpc__'],
-                'ppc64'   : ['-D__powerpc64__', '-D_CALL_ELF=2'],
-                'riscv32' : ['-D__riscv', '-D__riscv_xlen=32'],
-                'riscv64' : ['-D__riscv', '-D__riscv_xlen=64'],
-                'x86'     : ['-D__i386__'],
-                's390x'   : ['-D__s390__', '-D__s390x__'],
+                'ppc'     : ['-D__powerpc__', '-D__TARGET_ARCH_powerpc'],
+                'ppc64'   : ['-D__powerpc64__', '-D__TARGET_ARCH_powerpc', '-D_CALL_ELF=2'],
+                'riscv32' : ['-D__riscv', '-D__riscv_xlen=32', '-D__TARGET_ARCH_riscv'],
+                'riscv64' : ['-D__riscv', '-D__riscv_xlen=64', '-D__TARGET_ARCH_riscv'],
+                'x86'     : ['-D__i386__', '-D__TARGET_ARCH_x86'],
+                's390x'   : ['-D__s390__', '-D__s390x__', '-D__TARGET_ARCH_s390'],
 
                 # For arm, assume hardware fp is available.
-                'arm'     : ['-D__arm__', '-D__ARM_PCS_VFP'],
+                'arm'     : ['-D__arm__', '-D__ARM_PCS_VFP', '-D__TARGET_ARCH_arm'],
         }
 
         bpf_arch_flags = cpu_arch_defines.get(host_machine.cpu_family(),