@@ -78,16 +78,21 @@ endif()
78
78
if (BUILD_absl)
79
79
message (CHECK_START "Fetching Abseil-cpp" )
80
80
list (APPEND CMAKE_MESSAGE_INDENT " " )
81
- set (ABSL_ENABLE_INSTALL ON )
82
81
set (ABSL_USE_SYSTEM_INCLUDES ON )
82
+ # We want Abseil to declare what C++ standard it was compiled with.
83
83
set (ABSL_PROPAGATE_CXX_STD ON )
84
+ # We want Abseil to keep the INSTALL rules enabled, even though it is a
85
+ # subproject. Otherwise the install rules in this project break.
86
+ set (ABSL_ENABLE_INSTALL ON )
84
87
set (ABSL_BUILD_TESTING OFF )
85
88
FetchContent_Declare(
86
89
absl
87
90
GIT_REPOSITORY "https://github.com/abseil/abseil-cpp.git"
88
91
GIT_TAG "20250127.0"
89
92
GIT_SHALLOW TRUE
90
- PATCH_COMMAND git apply --ignore -whitespace "${CMAKE_CURRENT_LIST_DIR} /../../patches/abseil-cpp-20250127.0.patch"
93
+ PATCH_COMMAND git apply --ignore -whitespace
94
+ "${CMAKE_CURRENT_LIST_DIR} /../../patches/abseil-cpp-20250127.0.patch"
95
+ OVERRIDE_FIND_PACKAGE
91
96
)
92
97
FetchContent_MakeAvailable(absl)
93
98
list (POP_BACK CMAKE_MESSAGE_INDENT)
@@ -259,33 +264,86 @@ if(BUILD_HIGHS)
259
264
message (CHECK_PASS "fetched" )
260
265
endif ()
261
266
267
+ # ##############################################################################
268
+ # BOOST
269
+ # ##############################################################################
270
+ if (BUILD_Boost)
271
+ message (CHECK_START "Fetching Boost" )
272
+ list (APPEND CMAKE_MESSAGE_INDENT " " )
273
+ FetchContent_Declare(
274
+ Boost
275
+ URL
276
+ https://github.com/boostorg/boost/releases/download/boost-1.87.0/boost-1.87.0-cmake.tar.gz
277
+ USES_TERMINAL_DOWNLOAD TRUE
278
+ DOWNLOAD_NO_EXTRACT FALSE
279
+ PATCH_COMMAND git apply --ignore -whitespace "${CMAKE_CURRENT_LIST_DIR} /../../patches/boost-1.87.0.patch"
280
+ )
281
+ set (BOOST_INCLUDE_LIBRARIES multiprecision serialization)
282
+ option (BOOST_SKIP_INSTALL_RULES NO )
283
+ set (BOOST_ENABLE_CMAKE ON )
284
+ set (BUILD_SHARED_LIBS OFF )
285
+ FetchContent_MakeAvailable(Boost)
286
+ set (BUILD_SHARED_LIBS ON )
287
+ list (POP_BACK CMAKE_MESSAGE_INDENT)
288
+ message (CHECK_PASS "fetched" )
289
+ endif ()
290
+
291
+ # ##############################################################################
292
+ # SOPLEX
293
+ # ##############################################################################
294
+ if (BUILD_soplex)
295
+ message (CHECK_START "Fetching SOPLEX" )
296
+ list (APPEND CMAKE_MESSAGE_INDENT " " )
297
+ FetchContent_Declare(
298
+ soplex
299
+ GIT_REPOSITORY "https://github.com/scipopt/soplex.git"
300
+ GIT_TAG "release-713"
301
+ GIT_SHALLOW TRUE
302
+ PATCH_COMMAND git apply --ignore -whitespace
303
+ "${CMAKE_CURRENT_LIST_DIR} /../../patches/soplex-v7.1.3.patch"
304
+ )
305
+ set (SHARED ON CACHE BOOL "Soplex param" FORCE)
306
+ set (ZLIB ON CACHE BOOL "Soplex param" FORCE)
307
+ set (GMP OFF CACHE BOOL "Soplex param" FORCE)
308
+ set (BOOST ON CACHE BOOL "Soplex param" FORCE)
309
+ set (QUADMATH OFF CACHE BOOL "Soplex param" FORCE)
310
+ set (MPFR OFF CACHE BOOL "Soplex param" FORCE)
311
+ set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON CACHE BOOL "Soplex param" FORCE)
312
+ set (MT OFF CACHE BOOL "Soplex param" FORCE)
313
+ set (PAPILO OFF CACHE BOOL "Soplex param" FORCE)
314
+ #set(Boost_INCLUDE_DIR "../boost-src/libs/config/include" CACHE PATH "Soplex param" FORCE)
315
+ FetchContent_MakeAvailable(soplex)
316
+ list (POP_BACK CMAKE_MESSAGE_INDENT)
317
+ message (CHECK_PASS "fetched" )
318
+ endif ()
319
+
262
320
# ##############################################################################
263
321
# SCIP
264
322
# ##############################################################################
265
323
if (BUILD_SCIP)
266
324
message (CHECK_START "Fetching SCIP" )
267
325
list (APPEND CMAKE_MESSAGE_INDENT " " )
268
- set (SHARED OFF )
269
- set (READLINE OFF )
270
- set (GMP OFF )
271
- set (PAPILO OFF )
272
- set (ZIMPL OFF )
273
- set (IPOPT OFF )
274
- set (AMPL OFF )
275
-
276
- set (TPI "tny" CACHE STRING "Scip param" )
277
- set (EXPRINT "none" CACHE STRING "Scip param" )
278
- set (LPS "none" CACHE STRING "Scip param" )
279
- set (SYM "none" CACHE STRING "Scip param" )
280
326
FetchContent_Declare(
281
327
scip
282
328
GIT_REPOSITORY "https://github.com/scipopt/scip.git"
283
329
GIT_TAG "v921"
284
330
GIT_SHALLOW TRUE
285
- PATCH_COMMAND git apply --ignore -whitespace "${CMAKE_CURRENT_LIST_DIR} /../../patches/scip-v921.patch"
331
+ PATCH_COMMAND git apply --ignore -whitespace
332
+ "${CMAKE_CURRENT_LIST_DIR} /../../patches/scip-v921.patch"
286
333
)
334
+ set (SHARED ON CACHE BOOL "Scip param" FORCE)
335
+ set (ZLIB ON CACHE BOOL "Scip param" FORCE)
336
+ set (READLINE OFF CACHE BOOL "Scip param" FORCE)
337
+ set (GMP OFF CACHE BOOL "Scip param" FORCE)
338
+ set (PAPILO OFF CACHE BOOL "Scip param" FORCE)
339
+ set (ZIMPL OFF CACHE BOOL "Scip param" FORCE)
340
+ set (AMPL OFF CACHE BOOL "Scip param" FORCE)
341
+ set (IPOPT OFF CACHE BOOL "Scip param" FORCE)
342
+ set (TPI "tny" CACHE STRING "Scip param" FORCE)
343
+ set (EXPRINT "none" CACHE STRING "Scip param" FORCE)
344
+ set (LPS "spx" CACHE STRING "Scip param" FORCE)
345
+ set (SYM "none" CACHE STRING "Scip param" FORCE)
287
346
FetchContent_MakeAvailable(scip)
288
- set (LPI_GLOP_SRC ${scip_SOURCE_DIR} /src/lpi/lpi_glop.cpp PARENT_SCOPE)
289
347
list (POP_BACK CMAKE_MESSAGE_INDENT)
290
348
message (CHECK_PASS "fetched" )
291
349
endif ()
0 commit comments