]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/dmclock/cmake/modules/BuildGTest.cmake
import quincy beta 17.1.0
[ceph.git] / ceph / src / dmclock / cmake / modules / BuildGTest.cmake
index 2b3f2ae520e3efc960d5457c54a40612071bf6b4..456d1d3be563022dd59de089b700f6924d15387e 100644 (file)
@@ -1,8 +1,18 @@
 macro(_build_gtest gtest_root)
   include(ExternalProject)
+  set(gtest_library ${CMAKE_STATIC_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX})
+  set(gtest_main_library ${CMAKE_STATIC_LIBRARY_PREFIX}gtest_main${CMAKE_STATIC_LIBRARY_SUFFIX})
+  set(gmock_library ${CMAKE_STATIC_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX})
+  set(gmock_main_library ${CMAKE_STATIC_LIBRARY_PREFIX}gmock_main${CMAKE_STATIC_LIBRARY_SUFFIX})
+
   ExternalProject_Add(googletest
     SOURCE_DIR ${gtest_root}
     CMAKE_ARGS -DBUILD_GMOCK=OFF -DBUILD_GTEST=ON
+    BUILD_BYPRODUCTS
+      <BINARY_DIR>/lib/${gtest_library}
+      <BINARY_DIR>/lib/${gtest_main_library}
+      <BINARY_DIR>/lib/${gmock_library}
+      <BINARY_DIR>/lib/${gmock_main_library}
     INSTALL_COMMAND ""
     LOG_CONFIGURE ON
     LOG_BUILD ON)
@@ -10,7 +20,7 @@ macro(_build_gtest gtest_root)
   ExternalProject_Get_Property(googletest source_dir)
   find_path(GTEST_INCLUDE_DIRS
     NAMES gtest/gtest.h
-    PATHS ${source_dir}/googletest/include /usr/include)
+    PATHS ${source_dir}/include /usr/include)
   find_path(GMOCK_INCLUDE_DIRS
     NAMES gmock/gmock.h
     PATHS ${source_dir}/googlemock/include /usr/include)
@@ -18,7 +28,8 @@ macro(_build_gtest gtest_root)
   find_package(Threads REQUIRED)
 
   ExternalProject_Get_Property(googletest binary_dir)
-  set(GTEST_LIBRARY_PATH ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}gtest.a)
+  set(GTEST_LIBRARY_PATH ${binary_dir}/lib/${gtest_library})
+  unset(gtest_library)
   set(GTEST_LIBRARY GTest::GTest)
   add_library(${GTEST_LIBRARY} STATIC IMPORTED)
   set_target_properties(${GTEST_LIBRARY} PROPERTIES
@@ -29,7 +40,8 @@ macro(_build_gtest gtest_root)
   add_dependencies(${GTEST_LIBRARY} googletest)
   set(GTEST_LIBRARIES ${GTEST_LIBRARY})
 
-  set(GTEST_MAIN_LIBRARY_PATH ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main.a)
+  set(GTEST_MAIN_LIBRARY_PATH ${binary_dir}/lib/${gtest_main_library})
+  unset(gtest_main_library)
   set(GTEST_MAIN_LIBRARY GTest::Main)
   add_library(${GTEST_MAIN_LIBRARY} STATIC IMPORTED)
   set_target_properties(${GTEST_MAIN_LIBRARY} PROPERTIES
@@ -38,7 +50,8 @@ macro(_build_gtest gtest_root)
     IMPORTED_LINK_INTERFACE_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
   add_dependencies(${GTEST_MAIN_LIBRARY} googletest)
 
-  set(GMOCK_LIBRARY_PATH ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}gmock.a)
+  set(GMOCK_LIBRARY_PATH ${binary_dir}/lib/${gmock_library})
+  unset(gmock_library)
   set(GMOCK_LIBRARY GMock::GMock)
   add_library(${GMOCK_LIBRARY} STATIC IMPORTED)
   set_target_properties(${GMOCK_LIBRARY} PROPERTIES
@@ -48,7 +61,8 @@ macro(_build_gtest gtest_root)
     IMPORTED_LINK_INTERFACE_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
   add_dependencies(${GMOCK_LIBRARY} googletest)
 
-  set(GMOCK_MAIN_LIBRARY_PATH ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}gmock_main.a)
+  set(GMOCK_MAIN_LIBRARY_PATH ${binary_dir}/lib/${gmock_main_library})
+  unset(gmock_main_library)
   set(GMOCK_MAIN_LIBRARY GMock::Main)
   add_library(${GMOCK_MAIN_LIBRARY} STATIC IMPORTED)
   set_target_properties(${GMOCK_MAIN_LIBRARY} PROPERTIES