diff options
-rw-r--r-- | cmake/ConfigureCVC4.cmake | 6 | ||||
-rw-r--r-- | src/CMakeLists.txt | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/cmake/ConfigureCVC4.cmake b/cmake/ConfigureCVC4.cmake index 84575d610..67c1f414d 100644 --- a/cmake/ConfigureCVC4.cmake +++ b/cmake/ConfigureCVC4.cmake @@ -2,6 +2,7 @@ include(CheckCXXSourceCompiles) include(CheckIncludeFile) include(CheckIncludeFileCXX) include(CheckSymbolExists) +include(CheckLibraryExists) # Check whether "long" and "int64_t" are distinct types w.r.t. overloading. # Even if they have the same size, they can be distinct, and some platforms @@ -54,6 +55,11 @@ if(CVC4_WINDOWS_BUILD) endif() else() check_symbol_exists(clock_gettime "time.h" HAVE_CLOCK_GETTIME) + if(NOT HAVE_CLOCK_GETTIME) + unset(HAVE_CLOCK_GETTIME CACHE) + check_library_exists(rt clock_gettime "time.h" HAVE_CLOCK_GETTIME) + find_library(RT_LIBRARIES NAMES rt) + endif() endif() check_symbol_exists(ffs "strings.h" HAVE_FFS) check_symbol_exists(optreset "getopt.h" HAVE_DECL_OPTRESET) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 460c6c14d..372888d36 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -773,6 +773,11 @@ endif() target_link_libraries(cvc4 ${GMP_LIBRARIES}) target_include_directories(cvc4 PUBLIC ${GMP_INCLUDE_DIR}) +# Add rt library +# Note: For glibc < 2.17 we have to additionally link against rt (man clock_gettime). +# RT_LIBRARIES should be empty for glibc >= 2.17 +target_link_libraries(cvc4 ${RT_LIBRARIES}) + #-----------------------------------------------------------------------------# # Visit main subdirectory after creating target cvc4. For target main, we have # to manually add library dependencies since we can't use |