From: dmitrykos Date: Thu, 4 Oct 2018 18:31:23 +0000 (+0300) Subject: cmake: test and set missed defines during configuration X-Git-Tag: curl-7_62_0~98^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=667b5721c71480b4e5dbd2f91d7668a2b92bf00b;p=thirdparty%2Fcurl.git cmake: test and set missed defines during configuration Added configuration checks for HAVE_BUILTIN_AVAILABLE and HAVE_CLOCK_GETTIME_MONOTONIC. Closes #3097 --- diff --git a/CMake/CurlTests.c b/CMake/CurlTests.c index ab244ac393..9388c835bf 100644 --- a/CMake/CurlTests.c +++ b/CMake/CurlTests.c @@ -549,3 +549,19 @@ main() { return 0; } #endif +#ifdef HAVE_CLOCK_GETTIME_MONOTONIC +#include +int +main() { + struct timespec ts = {0, 0}; + clock_gettime(CLOCK_MONOTONIC, &ts); + return 0; +} +#endif +#ifdef HAVE_BUILTIN_AVAILABLE +int +main() { + if(__builtin_available(macOS 10.12, *)) {} + return 0; +} +#endif diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d76053645..8ecf34ce05 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1026,6 +1026,12 @@ if(HAVE_INET_NTOA_R_DECL_REENTRANT) set(NEED_REENTRANT 1) endif() +# Check clock_gettime(CLOCK_MONOTONIC, x) support +curl_internal_test(HAVE_CLOCK_GETTIME_MONOTONIC) + +# Check compiler support of __builtin_available() +curl_internal_test(HAVE_BUILTIN_AVAILABLE) + # Some other minor tests if(NOT HAVE_IN_ADDR_T) diff --git a/lib/curl_config.h.cmake b/lib/curl_config.h.cmake index ab0094be5d..83cf07ba60 100644 --- a/lib/curl_config.h.cmake +++ b/lib/curl_config.h.cmake @@ -127,6 +127,9 @@ /* Define to 1 if bool is an available type. */ #cmakedefine HAVE_BOOL_T 1 +/* Define to 1 if you have the __builtin_available function. */ +#cmakedefine HAVE_BUILTIN_AVAILABLE 1 + /* Define to 1 if you have the clock_gettime function and monotonic timer. */ #cmakedefine HAVE_CLOCK_GETTIME_MONOTONIC 1