nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1diff --git a/CMakeLists.txt b/CMakeLists.txt
2index b3c57799..eeeca4c8 100644
3--- a/CMakeLists.txt
4+++ b/CMakeLists.txt
5@@ -52,9 +52,11 @@ set(CPACK_PACKAGE_VENDOR "Zuse Institute Berlin")
6 set(CPACK_PACKAGE_CONTACT "http://scipopt.org")
7 include(CPack)
8
9-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
10-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
11-set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
12+if(CMAKE_PROJECT_NAME EQUAL "SCIP")
13+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
14+ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
15+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
16+endif()
17
18 if(SCIPOptSuite_BINARY_DIR)
19 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SCIPOptSuite_BINARY_DIR}/bin)
20@@ -517,10 +519,10 @@ endif()
21 message(STATUS "Finding Solver \"${LPS}\"")
22 if(LPS STREQUAL "spx")
23 message(STATUS "Finding Soplex")
24- find_package(SOPLEX REQUIRED CONFIG HINTS ${SOPLEX_DIR})
25- if(NOT SOPLEX_FOUND)
26+ if(NOT TARGET libsoplex-pic OR NOT TARGET libsoplex)
27 message(FATAL_ERROR "Requested LP solver SoPlex not found.")
28 endif()
29+ set(SOPLEX_FOUND TRUE)
30 if (DEFINED SOPLEX_WITH_PAPILO)
31 message(STATUS "SOPLEX links PAPILO")
32 if((NOT SCIP_WITH_PAPILO)) # TODO not sure how to handle AUTOBUILD
33@@ -593,11 +595,11 @@ if(SOPLEX_FOUND)
34 message(STATUS "Finding SOPLEX - found")
35 # SoPlex headers can be directly included
36 include_directories(${SOPLEX_INCLUDE_DIRS})
37- set(LPS_LIBRARIES ${SOPLEX_LIBRARIES})
38- set(LPS_PIC_LIBRARIES ${SOPLEX_PIC_LIBRARIES})
39+ set(LPS_LIBRARIES libsoplex)
40+ set(LPS_PIC_LIBRARIES libsoplex-pic)
41 set(lpi lpi/lpi_spx.cpp)
42 else()
43- message(STATUS "Support SOPLEX: OFF")
44+ message(FATAL_ERROR "SOPLEX not found !")
45 endif()
46
47 if(CLP_FOUND)
48diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
49index c6ce7283..6b6b1fc8 100644
50--- a/src/CMakeLists.txt
51+++ b/src/CMakeLists.txt
52@@ -1213,6 +1213,13 @@ target_link_libraries(scip
53 add_dependencies(libscip scip_update_githash)
54 add_dependencies(scip scip_update_githash)
55
56+if(APPLE)
57+ set_target_properties(libscip PROPERTIES
58+ INSTALL_RPATH "@loader_path")
59+elseif(UNIX)
60+ set_target_properties(libscip PROPERTIES
61+ INSTALL_RPATH "$ORIGIN")
62+endif()
63 set_target_properties(libscip PROPERTIES
64 VERSION ${SCIP_VERSION_MAJOR}.${SCIP_VERSION_MINOR}.${SCIP_VERSION_PATCH}
65 SOVERSION ${SCIP_VERSION_MAJOR}.${SCIP_VERSION_MINOR}
66@@ -1265,17 +1272,8 @@ install(FILES ${PROJECT_SOURCE_DIR}/LICENSE DESTINATION ${CMAKE_INSTALL_DATADIR}
67 install(FILES ${PROJECT_SOURCE_DIR}/src/tclique/LICENSE DESTINATION ${CMAKE_INSTALL_DATADIR}/licenses/scip/tclique)
68
69 # Add all targets to the build-tree export set
70-export(TARGETS scip libscip
71- FILE "${PROJECT_BINARY_DIR}/scip-targets.cmake")
72-
73-# make soplex and zimpl dir absolute for the config file
74-if(SOPLEX_NEEDED)
75- get_filename_component(CONF_SOPLEX_DIR ${SOPLEX_DIR} REALPATH BASE_DIR ${CMAKE_SOURCE_DIR})
76-endif()
77-
78-if(ZIMPL_NEEDED)
79- get_filename_component(CONF_ZIMPL_DIR ${ZIMPL_DIR} REALPATH BASE_DIR ${CMAKE_SOURCE_DIR})
80-endif()
81+#export(TARGETS scip libscip
82+# FILE "${PROJECT_BINARY_DIR}/scip-targets.cmake")
83
84 # Configure scip-config.cmake for the build-tree:
85 # We add the CMake module path from the sources.
86@@ -1295,18 +1293,16 @@ ${PROJECT_BINARY_DIR}/scip-config-version.cmake
87 # We add the current directory of the installed scip-config.cmake as a CMake module path.
88 set(EXTRA_CMAKE_MODULE_PATH "\${CMAKE_CURRENT_LIST_DIR}")
89 set(CONF_INCLUDE_DIRS "\${CMAKE_CURRENT_LIST_DIR}/../../../include")
90-if(SOPLEX_NEEDED)
91- set(CONF_SOPLEX_DIR "\${CMAKE_CURRENT_LIST_DIR}/../soplex")
92-endif()
93-if(ZIMPL_NEEDED)
94- set(CONF_ZIMPL_DIR "\${CMAKE_CURRENT_LIST_DIR}/../zimpl")
95-endif()
96 configure_file(${PROJECT_SOURCE_DIR}/scip-config.cmake.in
97 "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/scip-config.cmake" @ONLY)
98
99 # install the targets of the scip export group and the config file so that other projects
100 # can link easily against scip
101-install(EXPORT scip-targets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/scip)
102+install(EXPORT scip-targets
103+ NAMESPACE SCIP::
104+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/scip
105+ COMPONENT Devel
106+)
107 install(FILES "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/scip-config.cmake"
108 ${PROJECT_BINARY_DIR}/scip-config-version.cmake
109 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/scip)