mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 08:34:37 +08:00
Fix MSVC builds and test runs
Change-Id: I79f839b22985a6510965559af54209d89c8703a0
This commit is contained in:
@@ -36,8 +36,8 @@ jobs:
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y \
|
||||
git \
|
||||
ccache \
|
||||
git \
|
||||
ninja-build
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
@@ -34,10 +34,10 @@ jobs:
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y \
|
||||
git \
|
||||
build-essential \
|
||||
ccache \
|
||||
cmake \
|
||||
git \
|
||||
libbenchmark-dev \
|
||||
libblas-dev \
|
||||
libeigen3-dev \
|
||||
|
||||
@@ -401,6 +401,10 @@ if (BUILD_TESTING)
|
||||
target_link_libraries (test_util PUBLIC GTest::gmock ceres_static)
|
||||
target_compile_definitions(test_util PRIVATE CERES_TEST_SRCDIR_SUFFIX="../../data")
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
target_compile_definitions(test_util PUBLIC GTEST_LINKED_AS_SHARED_LIBRARY=1)
|
||||
endif (BUILD_SHARED_LIBS)
|
||||
|
||||
macro (CERES_TEST NAME)
|
||||
add_executable(${NAME}_test ${NAME}_test.cc)
|
||||
|
||||
@@ -425,8 +429,10 @@ if (BUILD_TESTING)
|
||||
target_link_libraries (${NAME}_test PRIVATE SuiteSparse::SPQR)
|
||||
endif (TARGET SuiteSparse::SPQR)
|
||||
|
||||
add_test(NAME ${NAME}_test
|
||||
COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${NAME}_test)
|
||||
add_test(NAME ${NAME}_test COMMAND ${NAME}_test)
|
||||
# Override testing::SrcDir to support multi-configuration builds, such as MSVC
|
||||
# that write binaries into addtional configuration specific subdirectories.
|
||||
set_tests_properties(${NAME}_test PROPERTIES ENVIRONMENT TEST_SRCDIR=${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||
endmacro (CERES_TEST)
|
||||
|
||||
ceres_test(array_utils)
|
||||
|
||||
Reference in New Issue
Block a user