From e8401e9e8d84c7dab40677cc1687138135e86901 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Thu, 15 Dec 2022 19:48:22 -0500 Subject: [PATCH 1/2] meson: fix broken commit that broke the build In commit 031de3c69ccbf3282ed02fb49369b476730aeca8 some code was added that returned a boolean, but was treated as if it returned a dependency object. This wasn't tested and could not work. Moreover, zstd no longer built at all unless the entire programs directory was disabled and not even evaluated. Fix the return type checking. --- build/meson/programs/meson.build | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/meson/programs/meson.build b/build/meson/programs/meson.build index 8cee115da7..e611dc3374 100644 --- a/build/meson/programs/meson.build +++ b/build/meson/programs/meson.build @@ -51,8 +51,8 @@ endif export_dynamic_on_windows = false # explicit backtrace enable/disable for Linux & Darwin -execinfo = cc.has_header('execinfo.h', required: use_backtrace) -if not execinfo.found() +have_execinfo = cc.has_header('execinfo.h', required: use_backtrace) +if not have_execinfo zstd_c_args += '-DBACKTRACE_ENABLE=0' elif use_debug and host_machine_os == os_windows # MinGW target zstd_c_args += '-DBACKTRACE_ENABLE=1' From 626425dce0bfda5be67b96b61d09b11173c5e436 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Thu, 15 Dec 2022 19:34:25 -0500 Subject: [PATCH 2/2] meson: fix warning for using too-new features In commit 031de3c69ccbf3282ed02fb49369b476730aeca8 a feature of Meson 0.50.0 was added, but the minimum specified version of Meson is 0.48.0. Meson therefore emitted a warning: WARNING: Project targets '>=0.48.0' but uses feature introduced in '0.50.0': required arg in compiler.has_header. And if anyone actually used Meson 0.48.0 to build with, it would error out with mysterious claims that the build file itself is invalid, rather than telling the user to install a newer version of Meson. Solve this by bumping the minimum version to align with reality. This e.g. drops support for Debian oldstable (buster)'s packaged version of Meson, but still works if backports are enabled, or if the user can `pip install` a newer version. --- build/meson/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/meson/meson.build b/build/meson/meson.build index 2d15753d6d..576dc44db3 100644 --- a/build/meson/meson.build +++ b/build/meson/meson.build @@ -26,7 +26,7 @@ project('zstd', version: run_command( find_program('GetZstdLibraryVersion.py'), '../../lib/zstd.h', check: true).stdout().strip(), - meson_version: '>=0.48.0') + meson_version: '>=0.50.0') cc = meson.get_compiler('c') cxx = meson.get_compiler('cpp')