File tree Expand file tree Collapse file tree 4 files changed +48
-14
lines changed
Expand file tree Collapse file tree 4 files changed +48
-14
lines changed Original file line number Diff line number Diff line change @@ -31,8 +31,6 @@ message(STATUS "xtensor-python v${${PROJECT_NAME}_VERSION}")
3131# Build
3232# =====
3333
34- OPTION (BUILD_TESTS "xtensor test suite" ON )
35-
3634set (XTENSOR_PYTHON_HEADERS
3735 ${XTENSOR_PYTHON_INCLUDE_DIR} /xtensor-python/pyarray.hpp
3836 ${XTENSOR_PYTHON_INCLUDE_DIR} /xtensor-python/pybuffer_adaptor.hpp
@@ -42,6 +40,13 @@ set(XTENSOR_PYTHON_HEADERS
4240 ${XTENSOR_PYTHON_INCLUDE_DIR} /xtensor-python/xtensor_python_config.hpp
4341)
4442
43+ OPTION (BUILD_TESTS "xtensor test suite" OFF )
44+ OPTION (DOWNLOAD_GTEST "build gtest from downloaded sources" OFF )
45+
46+ if (DOWNLOAD_GTEST OR GTEST_SRC_DIR)
47+ set (BUILD_TESTS ON )
48+ endif ()
49+
4550if (BUILD_TESTS)
4651 include_directories (${XTENSOR_PYTHON_INCLUDE_DIR} )
4752 find_package (xtensor REQUIRED )
Original file line number Diff line number Diff line change @@ -68,9 +68,14 @@ if(MSVC)
6868 endforeach ()
6969endif ()
7070
71- if (DOWNLOAD_GTEST)
72- # Download and unpack googletest at configure time
73- configure_file (CMakeLists.txt.in googletest-download/CMakeLists.txt )
71+ if (DOWNLOAD_GTEST OR GTEST_SRC_DIR)
72+ if (DOWNLOAD_GTEST)
73+ # Download and unpack googletest at configure time
74+ configure_file (downloadGTest.cmake.in googletest-download/CMakeLists.txt )
75+ else ()
76+ # Copy local source of googletest at configure time
77+ configure_file (copyGTest.cmake.in googletest-download/CMakeLists.txt )
78+ endif ()
7479 execute_process (COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR} " .
7580 RESULT_VARIABLE result
7681 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} /googletest-download )
@@ -115,7 +120,7 @@ set(XTENSOR_PYTHON_TARGET test_xtensor_python)
115120add_executable (${XTENSOR_PYTHON_TARGET} ${XTENSOR_PYTHON_TESTS} ${XTENSOR_PYTHON_HEADERS} ${XTENSOR_HEADERS} )
116121target_link_libraries (${XTENSOR_PYTHON_TARGET} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${PYTHON_LIBRARIES} )
117122
118- if (DOWNLOAD_GTEST)
123+ if (DOWNLOAD_GTEST OR GTEST_SRC_DIR )
119124 add_custom_target (xtest COMMAND ./test_xtensor_python DEPENDS gtest_main ${XTENSOR_PYTHON_TARGET} )
120125else ()
121126 add_custom_target (xtest COMMAND ./test_xtensor_python DEPENDS ${XTENSOR_PYTHON_TARGET} )
Original file line number Diff line number Diff line change @@ -12,12 +12,12 @@ project(googletest-download NONE)
1212
1313include (ExternalProject )
1414ExternalProject_Add (googletest
15- GIT_REPOSITORY https://github.com/google/googletest.git
16- GIT_TAG release-1.8.0
17- SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/googletest-src"
18- BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/googletest-build"
19- CONFIGURE_COMMAND ""
20- BUILD_COMMAND ""
21- INSTALL_COMMAND ""
22- TEST_COMMAND ""
15+ URL "${GTEST_SRC_DIR} "
16+ SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR} /googletest-src"
17+ BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR} /googletest-build"
18+ CONFIGURE_COMMAND ""
19+ BUILD_COMMAND ""
20+ INSTALL_COMMAND ""
21+ TEST_COMMAND ""
2322)
23+
Original file line number Diff line number Diff line change 1+ ############################################################################
2+ # Copyright (c) 2016, Johan Mabille and Sylvain Corlay #
3+ # #
4+ # Distributed under the terms of the BSD 3-Clause License. #
5+ # #
6+ # The full license is in the file LICENSE, distributed with this software. #
7+ ############################################################################
8+
9+ cmake_minimum_required (VERSION 2.8.2 )
10+
11+ project (googletest-download NONE )
12+
13+ include (ExternalProject )
14+ ExternalProject_Add (googletest
15+ GIT_REPOSITORY https://github.com/google/googletest.git
16+ GIT_TAG release-1.8.0
17+ SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR} /googletest-src"
18+ BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR} /googletest-build"
19+ CONFIGURE_COMMAND ""
20+ BUILD_COMMAND ""
21+ INSTALL_COMMAND ""
22+ TEST_COMMAND ""
23+ )
24+
You can’t perform that action at this time.
0 commit comments