Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions cmake/cpp.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -720,6 +720,9 @@ target_link_libraries(${PROJECT_NAME} PUBLIC
${PDLP_DEPS}
${SCIP_DEPS}
Threads::Threads)
if(UNIX AND NOT APPLE AND USE_HIGHS AND BUILD_HIGHS)
target_link_options(${PROJECT_NAME} PRIVATE "LINKER:--exclude-libs,libhighs.a")
endif()
if(WIN32)
target_link_libraries(${PROJECT_NAME} PUBLIC psapi.lib ws2_32.lib)
endif()
Expand Down
8 changes: 8 additions & 0 deletions cmake/dependencies/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -321,7 +321,15 @@ if(BUILD_HIGHS)
)
set(CI OFF) # disable CI tests
set(BUILD_EXAMPLES OFF)
if(UNIX AND NOT APPLE)
set(_saved_build_shared_libs ${BUILD_SHARED_LIBS})
set(BUILD_SHARED_LIBS OFF)
endif()
FetchContent_MakeAvailable(highs)
if(UNIX AND NOT APPLE)
set(BUILD_SHARED_LIBS ${_saved_build_shared_libs})
unset(_saved_build_shared_libs)
endif()
list(POP_BACK CMAKE_MESSAGE_INDENT)
message(CHECK_PASS "fetched")
endif()
Expand Down
5 changes: 3 additions & 2 deletions cmake/dotnet.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -405,8 +405,9 @@ set(need_clp_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Clp}>>")
set(need_cgl_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Cgl}>>")
set(need_cbc_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Cbc}>>")

set(need_unix_highs_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_HIGHS}>>")
set(need_windows_highs_lib "$<AND:${is_windows},$<BOOL:${BUILD_HIGHS}>>")
set(is_highs_shared "$<STREQUAL:$<TARGET_PROPERTY:highs::highs,TYPE>,SHARED_LIBRARY>")
set(need_unix_highs_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_HIGHS}>,${is_highs_shared}>")
set(need_windows_highs_lib "$<AND:${is_windows},$<BOOL:${BUILD_HIGHS}>,${is_highs_shared}>")

set(need_unix_scip_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_SCIP}>>")
set(need_windows_scip_lib "$<AND:${is_windows},$<BOOL:${BUILD_SCIP}>>")
Expand Down
9 changes: 5 additions & 4 deletions cmake/java.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -325,8 +325,9 @@ set(need_unix_clp_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Clp}>>")
set(need_unix_cgl_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Cgl}>>")
set(need_unix_cbc_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Cbc}>>")

set(need_unix_highs_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_HIGHS}>>")
set(need_windows_highs_lib "$<AND:${is_windows},$<BOOL:${BUILD_HIGHS}>>")
set(is_highs_shared "$<STREQUAL:$<TARGET_PROPERTY:highs::highs,TYPE>,SHARED_LIBRARY>")
set(need_unix_highs_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_HIGHS}>,${is_highs_shared}>")
set(need_windows_highs_lib "$<AND:${is_windows},$<BOOL:${BUILD_HIGHS}>,${is_highs_shared}>")

set(need_unix_scip_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_SCIP}>>")
set(need_windows_scip_lib "$<AND:${is_windows},$<BOOL:${BUILD_SCIP}>>")
Expand Down Expand Up @@ -477,8 +478,8 @@ add_custom_command(
${JAVA_RESSOURCES_PATH}/${JAVA_NATIVE_PROJECT}/

COMMAND ${CMAKE_COMMAND} -E
$<IF:$<BOOL:${BUILD_HIGHS}>,copy,true>
$<${need_unix_highs_lib}:$<TARGET_SONAME_FILE:highs::highs>>
$<IF:$<OR:${need_unix_highs_lib},${need_windows_highs_lib}>,copy,true>
$<${need_unix_highs_lib}:$<${is_highs_shared}:$<TARGET_SONAME_FILE:highs::highs>>>
Comment thread
aryan5v marked this conversation as resolved.
Outdated
$<${need_windows_highs_lib}:$<TARGET_FILE:highs::highs>>
${JAVA_RESSOURCES_PATH}/${JAVA_NATIVE_PROJECT}/

Expand Down
9 changes: 5 additions & 4 deletions cmake/python.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -483,8 +483,9 @@ set(need_unix_clp_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Clp}>>")
set(need_unix_cgl_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Cgl}>>")
set(need_unix_cbc_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_Cbc}>>")

set(need_unix_highs_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_HIGHS}>>")
set(need_windows_highs_lib "$<AND:${is_windows},$<BOOL:${BUILD_HIGHS}>>")
set(is_highs_shared "$<STREQUAL:$<TARGET_PROPERTY:highs::highs,TYPE>,SHARED_LIBRARY>")
set(need_unix_highs_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_HIGHS}>,${is_highs_shared}>")
set(need_windows_highs_lib "$<AND:${is_windows},$<BOOL:${BUILD_HIGHS}>,${is_highs_shared}>")

set(need_unix_scip_lib "$<AND:${is_not_windows},$<BOOL:${BUILD_SCIP}>>")
set(need_windows_scip_lib "$<AND:${is_windows},$<BOOL:${BUILD_SCIP}>>")
Expand Down Expand Up @@ -638,8 +639,8 @@ add_custom_command(
${PYTHON_PROJECT}/.libs

COMMAND ${CMAKE_COMMAND} -E
$<IF:$<BOOL:${BUILD_HIGHS}>,copy,true>
$<${need_unix_highs_lib}:$<TARGET_SONAME_FILE:highs::highs>>
$<IF:$<OR:${need_unix_highs_lib},${need_windows_highs_lib}>,copy,true>
$<${need_unix_highs_lib}:$<${is_highs_shared}:$<TARGET_SONAME_FILE:highs::highs>>>
Comment thread
aryan5v marked this conversation as resolved.
Outdated
$<${need_windows_highs_lib}:$<TARGET_FILE:highs::highs>>
${PYTHON_PROJECT}/.libs

Expand Down
Loading