Skip to content

Commit 8ee4e65

Browse files
committed
Download gtest fixes
1 parent c776127 commit 8ee4e65

File tree

2 files changed

+11
-29
lines changed

2 files changed

+11
-29
lines changed

CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,16 @@ set(XTENSOR_PYTHON_CMAKECONFIG_INSTALL_DIR "share/cmake/${PROJECT_NAME}" CACHE S
8282
configure_package_config_file(${PROJECT_NAME}Config.cmake.in
8383
"${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
8484
INSTALL_DESTINATION ${XTENSOR_PYTHON_CMAKECONFIG_INSTALL_DIR})
85+
86+
# xtensor-python is header-only and does not depend on the architecture.
87+
# Remove CMAKE_SIZEOF_VOID_P from xtensor-pythonConfigVersion.cmake so that an xtensor-pythonConfig.cmake
88+
# generated for a 64 bit target can be used for 32 bit targets and vice versa.
89+
set(_XTENSOR_CMAKE_SIZEOF_VOID_P ${CMAKE_SIZEOF_VOID_P})
90+
unset(CMAKE_SIZEOF_VOID_P)
8591
write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
8692
VERSION ${${PROJECT_NAME}_VERSION}
8793
COMPATIBILITY AnyNewerVersion)
94+
set(CMAKE_SIZEOF_VOID_P ${_XTENSOR_CMAKE_SIZEOF_VOID_P})
8895
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
8996
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
9097
DESTINATION ${XTENSOR_PYTHON_CMAKECONFIG_INSTALL_DIR})

test/CMakeLists.txt

Lines changed: 4 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -34,28 +34,6 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU"
3434
else()
3535
message(FATAL_ERROR "Unsupported compiler -- xtensor requires C++14 support!")
3636
endif()
37-
38-
# Enable link time optimization and set the default symbol
39-
# visibility to hidden (very important to obtain small binaries)
40-
if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
41-
# Default symbol visibility
42-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
43-
44-
# Check for Link Time Optimization support
45-
# (GCC/Clang)
46-
CHECK_CXX_COMPILER_FLAG("-flto" HAS_LTO_FLAG)
47-
if (HAS_LTO_FLAG)
48-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto")
49-
endif()
50-
51-
# Intel equivalent to LTO is called IPO
52-
if (CMAKE_CXX_COMPILER_ID MATCHES "Intel")
53-
CHECK_CXX_COMPILER_FLAG("-ipo" HAS_IPO_FLAG)
54-
if (HAS_IPO_FLAG)
55-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ipo")
56-
endif()
57-
endif()
58-
endif()
5937
endif()
6038

6139
if(MSVC)
@@ -95,10 +73,7 @@ if (DOWNLOAD_GTEST OR GTEST_SRC_DIR)
9573
${CMAKE_CURRENT_BINARY_DIR}/googletest-build)
9674

9775
set(GTEST_INCLUDE_DIRS "${gtest_SOURCE_DIR}/include")
98-
set(GTEST_LIBRARY_DIRS "${gtest_BINARY_DIR}")
99-
set(GTEST_LIBRARIES "${GTEST_LIBRARY_DIRS}/gtest.lib")
100-
set(GTEST_MAIN_LIBRARIES "${GTEST_LIBRARY_DIRS}/gtest_main.lib")
101-
set(GTEST_BOTH_LIBRARIES ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES})
76+
set(GTEST_BOTH_LIBRARIES gtest_main gtest)
10277
else()
10378
find_package(GTest REQUIRED)
10479
endif()
@@ -121,8 +96,8 @@ add_executable(${XTENSOR_PYTHON_TARGET} ${XTENSOR_PYTHON_TESTS} ${XTENSOR_PYTHON
12196
target_link_libraries(${XTENSOR_PYTHON_TARGET} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${PYTHON_LIBRARIES})
12297

12398
if(DOWNLOAD_GTEST OR GTEST_SRC_DIR)
124-
add_custom_target(xtest COMMAND ./test_xtensor_python DEPENDS gtest_main ${XTENSOR_PYTHON_TARGET})
125-
else()
126-
add_custom_target(xtest COMMAND ./test_xtensor_python DEPENDS ${XTENSOR_PYTHON_TARGET})
99+
add_dependencies(${XTENSOR_TARGET} gtest_main)
127100
endif()
128101

102+
add_custom_target(xtest COMMAND ./test_xtensor_python DEPENDS ${XTENSOR_PYTHON_TARGET})
103+

0 commit comments

Comments
 (0)