#LDFLAGS += -latomic
# We need clang (LLVM) to link the Rust static library and the C++ code with LTO enabled
# build-id SHA1 prevents an issue with the debug symbols ("export: `-Wl,--build-id=sha1': not a valid identifier")
-# and the -ldl an issue with the dlsym not being found ("ld.lld: error: undefined symbol: dlsym eferenced by weak.rs:142 (library/std/src/sys/pal/unix/weak.rs:142) [...] in archive ./dnsdist-rust-lib/rust/libdnsdist_rust.a)
override_dh_auto_configure:
- LDFLAGS="-latomic -fuse-ld=lld -Wl,--build-id=sha1 -ldl" \
+ LDFLAGS="-latomic -fuse-ld=lld -Wl,--build-id=sha1" \
CC=clang \
CXX=clang++ \
PKG_CONFIG_PATH=/opt/lib/pkgconfig dh_auto_configure -- \
#LDFLAGS += -latomic
# We need clang (LLVM) to link the Rust static library and the C++ code with LTO enabled
# build-id SHA1 prevents an issue with the debug symbols ("export: `-Wl,--build-id=sha1': not a valid identifier")
-# and the -ldl an issue with the dlsym not being found ("ld.lld: error: undefined symbol: dlsym eferenced by weak.rs:142 (library/std/src/sys/pal/unix/weak.rs:142) [...] in archive ./dnsdist-rust-lib/rust/libdnsdist_rust.a)
override_dh_auto_configure:
- LDFLAGS="-latomic -fuse-ld=lld -Wl,--build-id=sha1 -ldl" \
+ LDFLAGS="-latomic -fuse-ld=lld -Wl,--build-id=sha1" \
CC=clang \
CXX=clang++ \
PKG_CONFIG_PATH=/opt/lib/pkgconfig dh_auto_configure -- \
export CC=clang
export CXX=clang++
# build-id SHA1 prevents an issue with the debug symbols ("export: `-Wl,--build-id=sha1': not a valid identifier")
-# and -ldl an issue with the dlsym not being found ("ld.lld: error: undefined symbol: dlsym eferenced by weak.rs:142 (library/std/src/sys/pal/unix/weak.rs:142) [...] in archive ./dnsdist-rust-lib/rust/libdnsdist_rust.a)
-export LDFLAGS="-fuse-ld=lld -Wl,--build-id=sha1 -ldl"
+export LDFLAGS="-fuse-ld=lld -Wl,--build-id=sha1"
%if 0%{?rhel} < 9
# starting with EL-9 we get these hardening settings for free by just setting the right toolchain (see above)
if get_option('yaml').allowed()
subdir('dnsdist-rust-lib')
+ subdir('meson' / 'dlopen') # our Rust static library needs dlopen
else
dep_dnsdist_rust_lib = declare_dependency()
+ dep_dlopen = declare_dependency()
endif
common_sources += files(
dep_arc4random,
dep_boost,
dep_cdb,
+ dep_dlopen,
dep_dnstap,
dep_htmlfiles,
dep_ipcrypt,