diff options
author | Lennart Poettering <lennart@poettering.net> | 2023-03-16 15:36:26 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2023-04-24 17:10:08 +0200 |
commit | 4d3ef2d1a2fe9a8fd2f51b1af4f36bde9fbb354e (patch) | |
tree | 0bb9db4e798dbcf709b069d03251d63d8ffd06c0 /src | |
parent | 33054db730fb6f2fd6221d38a788e30b95525463 (diff) | |
download | systemd-4d3ef2d1a2fe9a8fd2f51b1af4f36bde9fbb354e.tar.gz |
meson: move bpf hookup into main meson build file
This way we can use it in systemd-userdbd later on, too.
Diffstat (limited to 'src')
-rw-r--r-- | src/core/bpf/meson.build | 113 | ||||
-rw-r--r-- | src/core/meson.build | 2 |
2 files changed, 0 insertions, 115 deletions
diff --git a/src/core/bpf/meson.build b/src/core/bpf/meson.build deleted file mode 100644 index ea9539bc47..0000000000 --- a/src/core/bpf/meson.build +++ /dev/null @@ -1,113 +0,0 @@ -# SPDX-License-Identifier: LGPL-2.1-or-later - -if conf.get('BPF_FRAMEWORK') != 1 - subdir_done() -endif - -bpf_clang_flags = [ - '-std=gnu11', - '-Wno-compare-distinct-pointer-types', - '-fno-stack-protector', - '-O2', - '-target', - 'bpf', - '-g', - '-c', -] - -bpf_gcc_flags = [ - '-std=gnu11', - '-fno-stack-protector', - '-O2', - '-mkernel=5.2', - '-mcpu=v3', - '-mco-re', - '-gbtf', - '-c', -] - -# Generate defines that are appropriate to tell the compiler what architecture -# we're compiling for. By default we just map meson's cpu_family to __<cpu_family>__. -# This dictionary contains the exceptions where this doesn't work. -# -# 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__'], - - # For arm, assume hardware fp is available. - 'arm' : ['-D__arm__', '-D__ARM_PCS_VFP'], -} - -bpf_arch_flags = cpu_arch_defines.get(host_machine.cpu_family(), - ['-D__@0@__'.format(host_machine.cpu_family())]) -if bpf_compiler == 'gcc' - bpf_arch_flags += ['-m' + host_machine.endian() + '-endian'] -endif - -libbpf_include_dir = libbpf.get_variable(pkgconfig : 'includedir') - -bpf_o_unstripped_cmd = [] -if bpf_compiler == 'clang' - bpf_o_unstripped_cmd += [ - clang, - bpf_clang_flags, - bpf_arch_flags, - ] -elif bpf_compiler == 'gcc' - bpf_o_unstripped_cmd += [ - bpf_gcc, - bpf_gcc_flags, - bpf_arch_flags, - ] -endif - -bpf_o_unstripped_cmd += ['-I.'] - -if not meson.is_cross_build() and bpf_compiler == 'clang' - target_triplet_cmd = run_command('gcc', '-dumpmachine', check: false) - if target_triplet_cmd.returncode() == 0 - target_triplet = target_triplet_cmd.stdout().strip() - bpf_o_unstripped_cmd += [ - '-isystem', - '/usr/include/@0@'.format(target_triplet) - ] - endif -endif - -bpf_o_unstripped_cmd += [ - '-idirafter', - libbpf_include_dir, - '@INPUT@', - '-o', - '@OUTPUT@' -] - -if bpftool_strip - bpf_o_cmd = [ - bpftool, - 'gen', - 'object', - '@OUTPUT@', - '@INPUT@' - ] -elif bpf_compiler == 'clang' - bpf_o_cmd = [ - llvm_strip, - '-g', - '@INPUT@', - '-o', - '@OUTPUT@' - ] -endif - -skel_h_cmd = [ - bpftool, - 'gen', - 'skeleton', - '@INPUT@' -] diff --git a/src/core/meson.build b/src/core/meson.build index af3eaa52d2..ac0107a753 100644 --- a/src/core/meson.build +++ b/src/core/meson.build @@ -74,8 +74,6 @@ if conf.get('BPF_FRAMEWORK') == 1 ) endif -subdir('bpf') - subdir('bpf/socket_bind') if conf.get('BPF_FRAMEWORK') == 1 libcore_sources += [socket_bind_skel_h] |