meson: copy prefix mapping CFLAGS when building BPF objects

Otherwise the filenames will contain variable paths and break reproducibility
This commit is contained in:
Luca Boccassi
2024-04-29 19:00:34 +02:00
committed by Luca Boccassi
parent aab7bb5968
commit 8d6e439aae
+18
View File
@@ -1717,6 +1717,24 @@ if conf.get('BPF_FRAMEWORK') == 1
'-c',
]
# If c_args contains these flags copy them along with the values, in order to avoid breaking
# reproducible builds and other functionality
propagate_cflags = [
'-ffile-prefix-map=',
'-fdebug-prefix-map=',
'-fmacro-prefix-map=',
]
foreach opt : c_args
foreach flag : propagate_cflags
if opt.startswith(flag)
bpf_clang_flags += [opt]
bpf_gcc_flags += [opt]
break
endif
endforeach
endforeach
# 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.