Skip to content

Commit f3aadf6

Browse files
committed
Fixed caching of the external CMake project so that it works for multi-architecture builds
1 parent a3d4ac0 commit f3aadf6

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

CMakeLists.txt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,13 @@ include(CTest)
1111
set(CMAKE_CXX_STANDARD 17)
1212
set(CMAKE_CXX_STANDARD_REQUIRED True)
1313

14-
set(CADICAL_DIR ${CMAKE_BINARY_DIR}/solvers/src/cadical_external/build)
14+
set(CADICAL_ARCH_SUFFIX "${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
15+
if(APPLE AND CMAKE_OSX_ARCHITECTURES)
16+
string(REPLACE ";" "_" CADICAL_ARCH_SUFFIX "macos-${CMAKE_OSX_ARCHITECTURES}")
17+
endif()
18+
19+
set(CADICAL_PREFIX "${CMAKE_BINARY_DIR}/solvers-${CADICAL_ARCH_SUFFIX}")
20+
set(CADICAL_DIR ${CADICAL_PREFIX}/src/cadical_external/build)
1521
set(CADICAL_LIB ${CADICAL_DIR}/libcadical.a)
1622
if (EXISTS ${CADICAL_LIB})
1723
message(STATUS "Cadical found at ${CADICAL_LIB}")
@@ -24,7 +30,7 @@ else()
2430
ExternalProject_Add(cadical_external
2531
GIT_REPOSITORY https://github.com/arminbiere/cadical.git
2632
GIT_TAG master
27-
PREFIX solvers
33+
PREFIX ${CADICAL_PREFIX}
2834
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env CXXFLAGS=-fPIC CFLAGS=-fPIC ./configure
2935
BUILD_COMMAND make -j
3036
INSTALL_COMMAND ""

0 commit comments

Comments
 (0)