From 9246ecb4f41412da0e118e0c60f8f3a54ea3830c Mon Sep 17 00:00:00 2001 From: d3x0r Date: Tue, 4 Jul 2017 06:30:20 -0700 Subject: [PATCH] implement new option ENABLE_GOOGLETEST_INSTALL; implement GNUInstallDirs for correct lib target name. Apply changes from #1161 to support windows better (dll goes to runtime, .lib(export) to lib and .lib(static) to lib ) --- CMakeLists.txt | 4 ++++ googlemock/CMakeLists.txt | 12 ++++++++---- googletest/CMakeLists.txt | 12 ++++++++---- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5754992e8c..29ff06a95d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,6 +4,10 @@ project( googletest-distribution ) enable_testing() +include(GNUInstallDirs) + +option(DISBLE_GOOGLETEST_INSTALL "Skip installation" ON) + option(BUILD_GTEST "Builds the googletest subproject" OFF) #Note that googlemock target already builds googletest diff --git a/googlemock/CMakeLists.txt b/googlemock/CMakeLists.txt index 9fb96a4bf6..af13731776 100644 --- a/googlemock/CMakeLists.txt +++ b/googlemock/CMakeLists.txt @@ -103,10 +103,14 @@ endif() ######################################################################## # # Install rules -install(TARGETS gmock gmock_main - DESTINATION lib) -install(DIRECTORY ${gmock_SOURCE_DIR}/include/gmock - DESTINATION include) +if(NOT DISABLE_GOOGLETEST_INSTALL) + install(TARGETS gmock gmock_main + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + install(DIRECTORY ${gmock_SOURCE_DIR}/include/gmock + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +endif(NOT DISABLE_GOOGLETEST_INSTALL) ######################################################################## # diff --git a/googletest/CMakeLists.txt b/googletest/CMakeLists.txt index 36d0a9ecc2..d96cec2229 100644 --- a/googletest/CMakeLists.txt +++ b/googletest/CMakeLists.txt @@ -102,10 +102,14 @@ endif() ######################################################################## # # Install rules -install(TARGETS gtest gtest_main - DESTINATION lib) -install(DIRECTORY ${gtest_SOURCE_DIR}/include/gtest - DESTINATION include) +if(NOT DISABLE_GOOGLETEST_INSTALL) + install(TARGETS gtest gtest_main + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + install(DIRECTORY ${gtest_SOURCE_DIR}/include/gtest + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +endif(NOT DISABLE_GOOGLETEST_INSTALL) ######################################################################## #