diff -ur root-6.16.00.orig/cmake/modules/SearchInstalledSoftware.cmake root-6.16.00/cmake/modules/SearchInstalledSoftware.cmake --- root-6.16.00.orig/cmake/modules/SearchInstalledSoftware.cmake 2019-01-23 09:23:37.000000000 +0100 +++ root-6.16.00/cmake/modules/SearchInstalledSoftware.cmake 2019-01-25 12:43:58.106532400 +0100 @@ -1525,76 +1525,18 @@ #---Download googletest-------------------------------------------------------------- if (testing) - # FIXME: Remove our version of gtest in roottest. We can reuse this one. - # Add googletest - # http://stackoverflow.com/questions/9689183/cmake-googletest + # Workaround for missing libraries in Fedora's gmock packaging < 1.8.0 + if(EXISTS ${CMAKE_SOURCE_DIR}/googlemock) + set(_G_LIBRARY_PATH ${CMAKE_SOURCE_DIR}/googlemock) - set(_gtest_byproduct_binary_dir - ${CMAKE_CURRENT_BINARY_DIR}/googletest-prefix/src/googletest-build/googlemock/) - set(_gtest_byproducts - ${_gtest_byproduct_binary_dir}/gtest/libgtest.a - ${_gtest_byproduct_binary_dir}/gtest/libgtest_main.a - ${_gtest_byproduct_binary_dir}/libgmock.a - ${_gtest_byproduct_binary_dir}/libgmock_main.a - ) - - if(MSVC) - set(EXTRA_GTEST_OPTS - -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=\\\"\\\" - -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=\\\"\\\") - endif() - if(APPLE) - set(EXTRA_GTEST_OPTS - -DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}) - endif() - - ExternalProject_Add( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.8.0 - UPDATE_COMMAND "" - # TIMEOUT 10 - # # Force separate output paths for debug and release builds to allow easy - # # identification of correct lib in subsequent TARGET_LINK_LIBRARIES commands - # CMAKE_ARGS -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=DebugLibs - # -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=ReleaseLibs - # -Dgtest_force_shared_crt=ON - CMAKE_ARGS -G ${CMAKE_GENERATOR} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} - -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} - -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} - -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} - -DCMAKE_AR=${CMAKE_AR} - -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} - ${EXTRA_GTEST_OPTS} - # Disable install step - INSTALL_COMMAND "" - BUILD_BYPRODUCTS ${_gtest_byproducts} - # Wrap download, configure and build steps in a script to log output - LOG_DOWNLOAD ON - LOG_CONFIGURE ON - LOG_BUILD ON) - - # Specify include dirs for gtest and gmock - ExternalProject_Get_Property(googletest source_dir) - set(GTEST_INCLUDE_DIR ${source_dir}/googletest/include) - set(GMOCK_INCLUDE_DIR ${source_dir}/googlemock/include) - - # Libraries - ExternalProject_Get_Property(googletest binary_dir) - set(_G_LIBRARY_PATH ${binary_dir}/googlemock/) - - # Register gtest, gtest_main, gmock, gmock_main - foreach (lib gtest gtest_main gmock gmock_main) + # Register gmock, gmock_main + foreach (lib gmock gmock_main) add_library(${lib} IMPORTED STATIC GLOBAL) - add_dependencies(${lib} googletest) endforeach() - set_property(TARGET gtest PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/gtest/${CMAKE_STATIC_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX}) - set_property(TARGET gtest_main PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/gtest/${CMAKE_STATIC_LIBRARY_PREFIX}gtest_main${CMAKE_STATIC_LIBRARY_SUFFIX}) set_property(TARGET gmock PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/${CMAKE_STATIC_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX}) set_property(TARGET gmock_main PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/${CMAKE_STATIC_LIBRARY_PREFIX}gmock_main${CMAKE_STATIC_LIBRARY_SUFFIX}) + endif() endif()