commit 51f801f659bc198d0e443c8487def73d3ad15c8a
parent a3f41e23ce4a0509e0b741c11a525cbe9f4985cc
Author: Florian Dold <dold@taler.net>
Date: Sun, 9 Aug 2026 19:23:49 +0200
build: silence CMake subproject warnings
Diffstat:
5 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/meson.build b/meson.build
@@ -33,6 +33,8 @@ cmake = import('cmake')
cmake_opts = cmake.subproject_options()
cmake_opts.add_cmake_defines({
'CMAKE_POSITION_INDEPENDENT_CODE' : true,
+ 'CMAKE_SUPPRESS_DEVELOPER_WARNINGS' : true,
+ 'CMAKE_WARN_DEPRECATED' : false,
'ENABLE_TESTING' : false,
'ENABLE_PROGRAMS' : false})
diff --git a/subprojects/c-ares/CMakeLists.txt b/subprojects/c-ares/CMakeLists.txt
@@ -44,6 +44,7 @@ OPTION (CARES_SYMBOL_HIDING "Hide private symbols in shared libraries"
OPTION (CARES_THREADS "Build with thread-safety support" ON)
OPTION (CARES_COVERAGE "Build for code coverage" OFF)
SET (CARES_RANDOM_FILE "/dev/urandom" CACHE STRING "Suitable File / Device Path for entropy, such as /dev/urandom")
+SET (CARES_C_STANDARD 90 CACHE STRING "C language standard used to build c-ares")
# Tests require a C++14 compiler
diff --git a/subprojects/c-ares/src/lib/CMakeLists.txt b/subprojects/c-ares/src/lib/CMakeLists.txt
@@ -33,7 +33,7 @@ IF (CARES_SHARED)
COMPILE_PDB_NAME cares
SOVERSION ${CARES_LIB_VERSION_MAJOR}
VERSION "${CARES_LIB_VERSION_MAJOR}.${CARES_LIB_VERSION_MINOR}.${CARES_LIB_VERSION_RELEASE}"
- C_STANDARD 90
+ C_STANDARD ${CARES_C_STANDARD}
)
IF (ANDROID)
@@ -93,7 +93,7 @@ IF (CARES_STATIC)
SET_TARGET_PROPERTIES (${LIBNAME} PROPERTIES
EXPORT_NAME cares${STATIC_SUFFIX}
COMPILE_PDB_NAME cares${STATIC_SUFFIX}
- C_STANDARD 90
+ C_STANDARD ${CARES_C_STANDARD}
)
# On Windows, the output name should have a static suffix since otherwise
@@ -150,4 +150,3 @@ ENDIF ()
-
diff --git a/subprojects/c-ares/src/tools/CMakeLists.txt b/subprojects/c-ares/src/tools/CMakeLists.txt
@@ -17,7 +17,7 @@ IF (CARES_BUILD_TOOLS)
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}"
)
SET_TARGET_PROPERTIES (ahost PROPERTIES
- C_STANDARD 90
+ C_STANDARD ${CARES_C_STANDARD}
)
IF (ANDROID)
@@ -51,7 +51,7 @@ IF (CARES_BUILD_TOOLS)
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}"
)
SET_TARGET_PROPERTIES (adig PROPERTIES
- C_STANDARD 90
+ C_STANDARD ${CARES_C_STANDARD}
)
IF (ANDROID)
diff --git a/subprojects/curl/meson.build b/subprojects/curl/meson.build
@@ -322,7 +322,17 @@ mbedx509_dep = mbedtls_proj.get_variable('mbedx509_dep')
cmake = import('cmake')
-cares_proj = cmake.subproject('c-ares', required : true)
+cares_opts = cmake.subproject_options()
+cares_opts.add_cmake_defines({
+ 'CARES_BUILD_TOOLS' : false,
+ 'CARES_C_STANDARD' : 99,
+ 'CMAKE_SUPPRESS_DEVELOPER_WARNINGS' : true,
+ 'CMAKE_WARN_DEPRECATED' : false,
+})
+# Meson's CMake importer emits source- and build-tree variants for relative
+# include directories. The source-side __CMake_build directory does not exist.
+cares_opts.append_compile_args('c', '-Wno-missing-include-dirs')
+cares_proj = cmake.subproject('c-ares', required : true, options : cares_opts)
cares_dep = cares_proj.dependency('c-ares')
libcurl = static_library('curl', [lib_c_src, lib_curlx_src, lib_vtls_src, lib_vauth_src, lib_vquic_src, lib_vssh_src],