| 1 | This patch allows the build process to use the provided dependencies instead
|
| 2 | of adding their source as CMake sub-directories (in which case "make install"
|
| 3 | would install googletest's and googlebenchmark's libraries and headers).
|
| 4 |
|
| 5 | diff --git a/CMakeLists.txt b/CMakeLists.txt
|
| 6 | index c1cba55..627550f 100644
|
| 7 | |
| 8 | |
| 9 | @@ -36,7 +36,7 @@ MACRO(PTHREADPOOL_TARGET_ENABLE_CXX11 target)
|
| 10 | ENDMACRO()
|
| 11 |
|
| 12 | # ---[ Download deps
|
| 13 | -IF(NOT DEFINED FXDIV_SOURCE_DIR)
|
| 14 | +IF(FALSE)
|
| 15 | MESSAGE(STATUS "Downloading FXdiv to ${CMAKE_BINARY_DIR}/FXdiv-source (define FXDIV_SOURCE_DIR to avoid it)")
|
| 16 | CONFIGURE_FILE(cmake/DownloadFXdiv.cmake "${CMAKE_BINARY_DIR}/FXdiv-download/CMakeLists.txt")
|
| 17 | EXECUTE_PROCESS(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
|
| 18 | @@ -46,7 +46,7 @@ IF(NOT DEFINED FXDIV_SOURCE_DIR)
|
| 19 | SET(FXDIV_SOURCE_DIR "${CMAKE_BINARY_DIR}/FXdiv-source" CACHE STRING "FXdiv source directory")
|
| 20 | ENDIF()
|
| 21 |
|
| 22 | -IF(PTHREADPOOL_BUILD_TESTS AND NOT DEFINED GOOGLETEST_SOURCE_DIR)
|
| 23 | +IF(FALSE)
|
| 24 | MESSAGE(STATUS "Downloading Google Test to ${CMAKE_BINARY_DIR}/googletest-source (define GOOGLETEST_SOURCE_DIR to avoid it)")
|
| 25 | CONFIGURE_FILE(cmake/DownloadGoogleTest.cmake "${CMAKE_BINARY_DIR}/googletest-download/CMakeLists.txt")
|
| 26 | EXECUTE_PROCESS(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
|
| 27 | @@ -56,7 +56,7 @@ IF(PTHREADPOOL_BUILD_TESTS AND NOT DEFINED GOOGLETEST_SOURCE_DIR)
|
| 28 | SET(GOOGLETEST_SOURCE_DIR "${CMAKE_BINARY_DIR}/googletest-source" CACHE STRING "Google Test source directory")
|
| 29 | ENDIF()
|
| 30 |
|
| 31 | -IF(PTHREADPOOL_BUILD_BENCHMARKS AND NOT DEFINED GOOGLEBENCHMARK_SOURCE_DIR)
|
| 32 | +IF(FALSE)
|
| 33 | MESSAGE(STATUS "Downloading Google Benchmark to ${CMAKE_BINARY_DIR}/googlebenchmark-source (define GOOGLEBENCHMARK_SOURCE_DIR to avoid it)")
|
| 34 | CONFIGURE_FILE(cmake/DownloadGoogleBenchmark.cmake "${CMAKE_BINARY_DIR}/googlebenchmark-download/CMakeLists.txt")
|
| 35 | EXECUTE_PROCESS(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
|
| 36 | @@ -150,27 +150,18 @@ IF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
| 37 | ENDIF()
|
| 38 |
|
| 39 | # ---[ Configure FXdiv
|
| 40 | -IF(NOT TARGET fxdiv)
|
| 41 | +IF(FALSE)
|
| 42 | SET(FXDIV_BUILD_TESTS OFF CACHE BOOL "")
|
| 43 | SET(FXDIV_BUILD_BENCHMARKS OFF CACHE BOOL "")
|
| 44 | ADD_SUBDIRECTORY(
|
| 45 | "${FXDIV_SOURCE_DIR}"
|
| 46 | "${CMAKE_BINARY_DIR}/FXdiv")
|
| 47 | ENDIF()
|
| 48 | -TARGET_LINK_LIBRARIES(pthreadpool PRIVATE fxdiv)
|
| 49 | -
|
| 50 | INSTALL(TARGETS pthreadpool
|
| 51 | LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
| 52 | ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
| 53 |
|
| 54 | IF(PTHREADPOOL_BUILD_TESTS)
|
| 55 | - # ---[ Build google test
|
| 56 | - IF(NOT TARGET gtest)
|
| 57 | - SET(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
| 58 | - ADD_SUBDIRECTORY(
|
| 59 | - "${GOOGLETEST_SOURCE_DIR}"
|
| 60 | - "${CMAKE_BINARY_DIR}/googletest")
|
| 61 | - ENDIF()
|
| 62 |
|
| 63 | ADD_EXECUTABLE(pthreadpool-test test/pthreadpool.cc)
|
| 64 | SET_TARGET_PROPERTIES(pthreadpool-test PROPERTIES
|
| 65 | @@ -188,14 +179,6 @@ IF(PTHREADPOOL_BUILD_TESTS)
|
| 66 | ENDIF()
|
| 67 |
|
| 68 | IF(PTHREADPOOL_BUILD_BENCHMARKS)
|
| 69 | - # ---[ Build google benchmark
|
| 70 | - IF(NOT TARGET benchmark)
|
| 71 | - SET(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "")
|
| 72 | - ADD_SUBDIRECTORY(
|
| 73 | - "${GOOGLEBENCHMARK_SOURCE_DIR}"
|
| 74 | - "${CMAKE_BINARY_DIR}/googlebenchmark")
|
| 75 | - ENDIF()
|
| 76 | -
|
| 77 | ADD_EXECUTABLE(latency-bench bench/latency.cc)
|
| 78 | SET_TARGET_PROPERTIES(latency-bench PROPERTIES
|
| 79 | CXX_STANDARD 11
|