diff options
author | Boris Stepanenko <Boris.Stepanenko@gmail.com> | 2021-09-03 19:38:43 +0300 |
---|---|---|
committer | Boris Stepanenko <Boris.Stepanenko@gmail.com> | 2021-09-03 19:38:43 +0300 |
commit | 5916212db066fccdc8e2709ec48129af82884f05 (patch) | |
tree | bac2adbeae93b460808ad3971be4c7a20b68f787 /CMakeLists.txt | |
parent | 35ef979ad550c1f94b4664493dfdd65b77191fc7 (diff) |
cmake: change GetGLibcVersion to compiler capabilities check
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index b27785e..e5f730f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,6 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/") include(GNUInstallDirs) -include(GetGLibcVersion) include(CheckSymbolExists) include(BuildQEMU) include(BuildNcurses) @@ -150,14 +149,23 @@ set(NM_DEFAULT_QEMUDIR "/usr/bin" CACHE STRING if(NM_OS_LINUX) add_definitions(-DNM_OS_LINUX) - get_glibc_version() - if(GLIBC_VERSION VERSION_GREATER 2.18) - add_definitions(-D_DEFAULT_SOURCE) - else() - add_definitions(-D_XOPEN_SOURCE=700 -D_BSD_SOURCE) + try_compile( + NET_IF + "${CMAKE_CURRENT_BINARY_DIR}/CMake_Tests" + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Tests/net_if.c" + COMPILE_DEFINITIONS "-Wall -Wextra -pedantic -Werror") + + if(NOT NET_IF) + add_definitions(-DNM_NET_IF_FIX) endif() - if(GLIBC_VERSION VERSION_GREATER 2.0) + try_compile( + SENDFILE + "${CMAKE_CURRENT_BINARY_DIR}/CMake_Tests" + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Tests/sendfile.c" + COMPILE_DEFINITIONS "-Wall -Wextra -pedantic -Werror") + + if(SENDFILE) set(NM_WITH_SENDFILE TRUE) add_definitions(-DNM_WITH_SENDFILE) endif() |