Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
CoMISo
CoMISo
Commits
7c075063
Commit
7c075063
authored
Dec 22, 2012
by
David Bommes
Browse files
cmake cleanup and fixes
git-svn-id:
http://www.openflipper.org/svnrepo/CoMISo/trunk@201
1355f012-dd97-4b2f-ae87-10fa9f823a57
parent
7bbe8c5a
Changes
19
Hide whitespace changes
Inline
Side-by-side
CoMISo/CMakeLists.txt
View file @
7c075063
...
...
@@ -29,6 +29,18 @@ set(COMISO_INCLUDE_DIRECTORIES "")
set
(
COMISO_LINK_DIRECTORIES
""
)
set
(
COMISO_LINK_LIBRARIES
""
)
FIND_PACKAGE
(
Boost 1.42.0 COMPONENTS system filesystem regex
)
if
(
Boost_FOUND
)
set
(
COMISO_BOOST_CONFIG_FILE_SETTINGS
"#define COMISO_BOOST_AVAILABLE 1"
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
Boost_INCLUDE_DIRS
}
)
# list( APPEND COMISO_LINK_DIRECTORIES ${Boost_LIBRARY_DIR} )
list
(
APPEND COMISO_LINK_LIBRARIES
${
Boost_LIBRARIES
}
)
else
()
set
(
COMISO_BOOST_CONFIG_FILE_SETTINGS
"#define COMISO_BOOST_AVAILABLE 0"
)
message
(
STATUS
"Boost not found!"
)
endif
()
find_package
(
GMM
)
if
(
GMM_FOUND
)
set
(
COMISO_GMM_CONFIG_FILE_SETTINGS
"#define COMISO_GMM_AVAILABLE 1"
)
...
...
@@ -187,9 +199,9 @@ endif ()
find_package
(
GUROBI
)
if
(
GUROBI_FOUND
)
set
(
COMISO_GUROBI_CONFIG_FILE_SETTINGS
"#define COMISO_GUROBI_AVAILABLE 1"
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
GUROBI_INCLUDE_DIR
}
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
GUROBI_LIBRARY_DIR
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
GUROBI_LIBRAR
Y
}
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
GUROBI_INCLUDE_DIR
S
}
)
#
list( APPEND COMISO_LINK_DIRECTORIES ${GUROBI_LIBRARY_DIR} )
list
(
APPEND COMISO_LINK_LIBRARIES
${
GUROBI_LIBRAR
IES
}
)
else
()
message
(
STATUS
"GUROBI not found!"
)
set
(
COMISO_GUROBI_CONFIG_FILE_SETTINGS
"#define COMISO_GUROBI_AVAILABLE 0"
)
...
...
@@ -316,6 +328,7 @@ configure_file ("${CMAKE_CURRENT_SOURCE_DIR}/Config/config.hh.in"
# Configure the examples last to be sure, that all configure files
# of the library are already there
#######################################################################
if
(
EXISTS
"
${
CMAKE_SOURCE_DIR
}
/Examples/factored_solver/CMakeLists.txt"
)
add_subdirectory
(
Examples/factored_solver
)
endif
()
...
...
CoMISo/Config/config.hh.in
View file @
7c075063
// Build time dependencies for CoMiso
@COMISO_QT4_CONFIG_FILE_SETTINGS@
@COMISO_BOOST_CONFIG_FILE_SETTINGS@
@COMISO_BLAS_CONFIG_FILE_SETTINGS@
@COMISO_GMM_CONFIG_FILE_SETTINGS@
@COMISO_ADOLC_CONFIG_FILE_SETTINGS@
...
...
CoMISo/Examples/factored_solver/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
factored_solver WIN32
${
sources
}
${
headers
}
)
else
()
...
...
CoMISo/Examples/quadratic_solver/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
quadratic_solver WIN32
${
sources
}
${
headers
}
)
else
()
...
...
CoMISo/Examples/small_eigenproblem/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_eigenproblem WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_eigenproblem PROPERTIES INSTALL_RPATH_USE_LINK_PATH
target_link_libraries
(
small_eigenproblem
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/Examples/small_factored_example/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_factored_solver WIN32
${
sources
}
${
headers
}
)
else
()
...
...
CoMISo/Examples/small_miqp/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_miqp WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_miqp PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1)
target_link_libraries
(
small_miqp
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/Examples/small_nleast_squares/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_nleast_squares WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_nleast_squares PROPERTIES INSTALL_RPATH_USE_LINK_PAT
target_link_libraries
(
small_nleast_squares
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/Examples/small_nsolver/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_nsolver WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_nsolver PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1)
target_link_libraries
(
small_nsolver
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/Examples/small_quadratic_example/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_quadratic_solver WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_quadratic_solver PROPERTIES INSTALL_RPATH_USE_LINK_P
target_link_libraries
(
small_quadratic_solver
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/Examples/small_quadratic_resolve_example/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_quadratic_resolve WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_quadratic_resolve PROPERTIES INSTALL_RPATH_USE_LINK_
target_link_libraries
(
small_quadratic_resolve
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/Examples/small_sparseqr/CMakeLists.txt
View file @
7c075063
include
(
ACGCommon
)
include
(
CoMISoExample
)
# source code directories
set
(
directories
.
)
# collect all header and source files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
if
(
WIN32
)
acg_add_executable
(
small_sparseqr WIN32
${
sources
}
${
headers
}
)
else
()
...
...
@@ -25,4 +12,4 @@ set_target_properties(small_sparseqr PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1)
target_link_libraries
(
small_sparseqr
CoMISo
${
COMISO_LINK_LIBRARIES
}
)
\ No newline at end of file
)
CoMISo/NSolver/GurobiHelper.cc
View file @
7c075063
...
...
@@ -7,7 +7,7 @@
#include
"GurobiHelper.hh"
#if COMISO_GUROBI_AVAILABLE
#if
(
COMISO_GUROBI_AVAILABLE
&& COMISO_BOOST_AVAILABLE)
#include
<QTemporaryFile>
#include
<QFileInfo>
...
...
CoMISo/NSolver/GurobiHelper.hh
View file @
7c075063
...
...
@@ -11,7 +11,7 @@
//== COMPILE-TIME PACKAGE REQUIREMENTS ========================================
#include
<CoMISo/Config/config.hh>
#if COMISO_GUROBI_AVAILABLE
#if
(
COMISO_GUROBI_AVAILABLE
&& COMISO_BOOST_AVAILABLE)
//=============================================================================
#include
<gurobi_c++.h>
...
...
CoMISo/cmake/CoMISoExample.cmake
View file @
7c075063
include
(
ACGCommon
)
find_package
(
COMISO
)
#find_package(MUMPS)
if
(
MUMPS_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
MUMPS_INCLUDE_DIR
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
MUMPS_LIBRARY
}
)
endif
()
find_package
(
IPOPT
)
#
find_package (IPOPT)
if
(
IPOPT_FOUND AND MUMPS_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
IPOPT_INCLUDE_DIR
}
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
IPOPT_LIBRARY_DIR
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
IPOPT_LIBRARY
}
)
endif
()
find_package
(
LAPACK
)
find_package
(
Taucs
)
#
find_package(LAPACK)
#
find_package(Taucs)
if
(
LAPACK_FOUND AND TAUCS_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
TAUCS_INCLUDE_DIR
}
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
LAPACK_INCLUDE_DIR
}
)
...
...
@@ -20,51 +24,51 @@ if(LAPACK_FOUND AND TAUCS_FOUND)
list
(
APPEND COMISO_LINK_LIBRARIES
${
LAPACK_LIBRARIES
}
)
endif
()
find_package
(
GUROBI
)
#
find_package(GUROBI)
if
(
GUROBI_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
GUROBI_INCLUDE_DIR
}
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
GUROBI_LIBRARY_DIR
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
GUROBI_LIBRARY
}
)
endif
()
find_package
(
ARPACK
)
#
find_package(ARPACK)
if
(
ARPACK_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
ARPACK_INCLUDE_DIR
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
ARPACK_LIBRARIES
}
)
endif
()
FIND_PACKAGE
(
Boost 1.42.0 COMPONENTS system filesystem regex
)
#
FIND_PACKAGE( Boost 1.42.0 COMPONENTS system filesystem regex)
if
(
Boost_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
Boost_INCLUDE_DIR
}
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
Boost_LIBRARY_DIRS
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
Boost_LIBRARIES
}
)
endif
()
FIND_PACKAGE
(
MPI
)
#
FIND_PACKAGE( MPI)
if
(
MPI_FOUND
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
MPI_CXX_LIBRARIES
}
)
endif
()
FIND_PACKAGE
(
PETSC
)
#
FIND_PACKAGE( PETSC)
if
(
PETSC_FOUND
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
PETSC_LIBRARY
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
TAO_LIBRARY
}
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
PETSC_LIBRARY_DIR
}
)
endif
()
FIND_PACKAGE
(
TAO
)
#
FIND_PACKAGE( TAO)
if
(
TAO_FOUND
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
TAO_LIBRARY_DIR
}
)
endif
()
FIND_PACKAGE
(
SUITESPARSE
)
#
FIND_PACKAGE( SUITESPARSE)
if
(
SUITESPARSE_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
SUITESPARSE_INCLUDE_DIRS
}
)
list
(
APPEND COMISO_LINK_LIBRARIES
${
SUITESPARSE_LIBRARIES
}
)
list
(
APPEND COMISO_LINK_DIRECTORIES
${
SUITESPARSE_LIBRARY_DIRS
}
)
endif
()
FIND_PACKAGE
(
Eigen3
)
#
FIND_PACKAGE( Eigen3)
if
(
Eigen3_FOUND
)
list
(
APPEND COMISO_INCLUDE_DIRECTORIES
${
Eigen3_INCLUDE_DIR
}
)
endif
()
...
...
@@ -83,3 +87,17 @@ include_directories (
link_directories
(
${
COMISO_LINK_DIRECTORIES
}
)
# source code directories
set
(
directories
${
CMAKE_CURRENT_SOURCE_DIR
}
)
# collect all header and source files
set
(
headers
""
)
set
(
sources
""
)
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
# remove template cc files from source file list
acg_drop_templates
(
sources
)
CoMISo/cmake/FindCPLEX.cmake
View file @
7c075063
...
...
@@ -50,8 +50,8 @@ include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set LIBCPLEX_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args
(
CPLEX DEFAULT_MSG
CPLEX_LIBRARY CPLEX_INCLUDE_DIR
)
CPLEX_LIBRARY CPLEX_INCLUDE_DIR
CPLEX_CONCERT_INCLUDE_DIR CPLEX_ILO_LIBRARY CPLEX_CONCERT_LIBRARY
)
mark_as_advanced
(
CPLEX_INCLUDE_DIR CPLEX_LIBRARY
)
mark_as_advanced
(
CPLEX_INCLUDE_DIR CPLEX_LIBRARY
CPLEX_CONCERT_INCLUDE_DIR CPLEX_ILO_LIBRARY CPLEX_CONCERT_LIBRARY
)
endif
(
CPLEX_INCLUDE_DIR
)
CoMISo/cmake/FindCoMISo.cmake
View file @
7c075063
...
...
@@ -7,10 +7,13 @@
# COMISO_LIBRARY - Link these to use COMISO
#
IF
(
COMISO_INCLUDE_DIR
)
# Already in cache, be silent
SET
(
COMISO_FIND_QUIETLY TRUE
)
ENDIF
(
COMISO_INCLUDE_DIR
)
if
(
COMISO_INCLUDE_DIR
)
# in cache already
set
(
COMISO_FOUND TRUE
)
SET
(
COMISO_LIBRARY_DIR
"
${
CMAKE_BINARY_DIR
}
/Build/
${
ACG_PROJECT_LIBDIR
}
"
)
SET
(
COMISO_LIBRARY
"CoMISo"
)
else
(
COMISO_INCLUDE_DIR
)
# Find CoMISo config file
FIND_PATH
(
COMISO_INCLUDE_DIR CoMISo/Config/config.hh
...
...
@@ -37,6 +40,21 @@ if ( COMISO_INCLUDE_DIR )
endif
()
STRING
(
REGEX MATCH
"
\#
define COMISO_BOOST_AVAILABLE 1"
COMISO_BOOST_BUILD_TIME_AVAILABLE
${
CURRENT_COMISO_CONFIG
}
)
if
(
COMISO_BOOST_BUILD_TIME_AVAILABLE
)
find_package
(
Boost 1.42.0 COMPONENTS system filesystem regex
)
if
(
NOT Boost_FOUND
)
message
(
ERROR
"COMISO configured with Boost but Boost not available"
)
endif
()
list
(
APPEND COMISO_OPT_DEPS
"Boost"
)
endif
()
STRING
(
REGEX MATCH
"
\#
define COMISO_SUITESPARSE_AVAILABLE 1"
COMISO_SUITESPARSE_BUILD_TIME_AVAILABLE
${
CURRENT_COMISO_CONFIG
}
)
if
(
COMISO_SUITESPARSE_BUILD_TIME_AVAILABLE
)
...
...
@@ -176,18 +194,38 @@ if ( COMISO_INCLUDE_DIR )
list
(
APPEND COMISO_OPT_DEPS
"CPLEX"
)
endif
()
STRING
(
REGEX MATCH
"
\#
define COMISO_Eigen3_AVAILABLE 1"
COMISO_Eigen3_BUILD_TIME_AVAILABLE
${
CURRENT_COMISO_CONFIG
}
)
if
(
COMISO_Eigen3_BUILD_TIME_AVAILABLE
)
find_package
(
Eigen3
)
if
(
NOT Eigen3_FOUND
)
message
(
ERROR
"COMISO configured with Eigen3 but Eigen3 not available"
)
endif
()
list
(
APPEND COMISO_OPT_DEPS
"Eigen3"
)
endif
()
add_definitions
(
-DCOMISODLL -DUSECOMISO
)
endif
(
COMISO_INCLUDE_DIR
)
IF
(
COMISO_INCLUDE_DIR
)
include
(
FindPackageHandleStandardArgs
)
SET
(
COMISO_FOUND TRUE
)
SET
(
COMISO_LIBRARY_DIR
"
${
CMAKE_BINARY_DIR
}
/Build/
${
ACG_PROJECT_LIBDIR
}
"
)
SET
(
COMISO_LIBRARY
"CoMISo"
)
SET
(
COMISO_DEPS
"GMM;BLAS;SUITESPARSE"
)
# SET( COMISO_DEPS "GMM;BLAS;SUITESPARSE" )
SET
(
COMISO_DEPS
"GMM"
CACHE STRING
"Comiso dependecies"
)
SET
(
COMISO_OPT_DEPS
${
COMISO_OPT_DEPS
}
CACHE STRING
"Comiso optional dependecies"
)
mark_as_advanced
(
COMISO_DEPS COMISO_OPT_DEPS
)
ELSE
(
COMISO_INCLUDE_DIR
)
SET
(
COMISO_FOUND FALSE
)
SET
(
COMISO_LIBRARY_DIR
)
ENDIF
(
COMISO_INCLUDE_DIR
)
endif
(
COMISO_INCLUDE_DIR
)
CoMISo/cmake/FindGMM.cmake
View file @
7c075063
...
...
@@ -24,7 +24,8 @@ FIND_PATH(GMM_INCLUDE_DIR NAMES gmm/gmm.h
../../External/include
/ACG/acgdev/gcc-4.3-i686/gmm-4.1/include/
/ACG/acgdev/gcc-4.3-i686/gmm-3/include/
${
module_file_path
}
/../../../External/include
)
${
module_file_path
}
/../../../External/include
$ENV{HOME}/opt/gmm/gmm-4.2/include
)
# Copy the results to the output variables.
...
...
CoMISo/cmake/FindGUROBI.cmake
View file @
7c075063
# - Try to find GUROBI
# Once done this will define
# GUROBI_FOUND - System has Gurobi
# GUROBI_INCLUDE_DIRS - The Gurobi include directories
# GUROBI_LIBRARIES - The libraries needed to use Gurobi
if
(
GUROBI_INCLUDE_DIR
)
# in cache already
set
(
GUROBI_FOUND TRUE
)
set
(
GUROBI_INCLUDE_DIRS
"
${
GUROBI_INCLUDE_DIR
}
"
)
set
(
GUROBI_LIBRARIES
"
${
GUROBI_LIBRARY
}
;
${
GUROBI_CXX_LIBRARY
}
"
)
else
(
GUROBI_INCLUDE_DIR
)
if
(
WIN32
)
find_path
(
GUROBI_INCLUDE_DIR NAMES SRC/gurobi_c++.h
PATHS
"C:
\\
libs
\\
gurobi45"
${
GUROBI_INCLUDE_PATH
}
)
find_library
(
GUROBI_LIBRARY_RELEASE
SuperLU
PATHS
"C:
\\
libs
\\
gurobi45
\\
lib"
)
find_library
(
GUROBI_LIBRARY_DEBUG
SuperLUd
PATHS
"C:
\\
libs
\\
gurobi45
\\
lib"
)
set
(
GUROBI_LIBRARY
"optimized;
${
GUROBI_LIBRARY_RELEASE
}
;debug;
${
GUROBI_LIBRARY_DEBUG
}
"
CACHE STRING
"GUROBI Libraries"
)
ELSEIF
(
APPLE
)
find_path
(
GUROBI_INCLUDE_DIR NAMES gurobi_c++.h
PATHS
"
${
CMAKE_SOURCE_DIR
}
/MacOS/Libs/gurobi40"
${
GUROBI_INCLUDE_PATH
}
"
${
GUROBI_HOME
}
/include"
)
find_library
(
GUROBI_LIBRARY
gurobi
PATHS
"
${
CMAKE_SOURCE_DIR
}
/MacOS/Libs/gurobi40"
"
${
GUROBI_HOME
}
/lib"
)
ELSE
(
WIN32
)
find_path
(
GUROBI_INCLUDE_DIR NAMES gurobi_c++.h
PATHS
"$ENV{GUROBI_HOME}/include"
${
GUROBI_INCLUDE_PATH
}
)
# MESSAGE(STATUS "$ENV{GUROBI_HOME}/include")
IF
(
GUROBI_INCLUDE_DIR
)
SET
(
GUROBI_FOUND TRUE
)
SET
(
GUROBI_INCLUDE_DIR
${
GUROBI_INCLUDE_DIR
}
)
ELSE
(
GUROBI_INCLUDE_DIR
)
SET
(
GUROBI_FOUND FALSE
)
SET
(
GUROBI_INCLUDE_DIR
${
GUROBI_INCLUDE_DIR
}
)
ENDIF
(
GUROBI_INCLUDE_DIR
)
#find_library( GUROBI_LIBRARY
# gurobi
# PATHS "${GUROBI_HOME}/lib" )
ENDIF
()
find_path
(
GUROBI_INCLUDE_DIR
NAMES gurobi_c++.h
PATHS
"$ENV{GUROBI_HOME}/include"
"/Library/gurobi502/mac64/include"
"C:
\\
libs
\\
gurobi502
\\
include"
)
find_library
(
GUROBI_LIBRARY
NAMES gurobi
gurobi45
gurobi46
gurobi50
PATHS
"$ENV{GUROBI_HOME}/lib"
"/Library/gurobi502/mac64/lib"
"C:
\\
libs
\\
gurobi502
\\
lib"
)
find_library
(
GUROBI_CXX_LIBRARY
NAMES gurobi_c++
PATHS
"$ENV{GUROBI_HOME}/lib"
"/Library/gurobi502/mac64/lib"
"C:
\\
libs
\\
gurobi502
\\
lib"
)
set
(
GUROBI_INCLUDE_DIRS
"
${
GUROBI_INCLUDE_DIR
}
"
)
set
(
GUROBI_LIBRARIES
"
${
GUROBI_LIBRARY
}
;
${
GUROBI_CXX_LIBRARY
}
"
)
# use c++ headers as default
# set(GUROBI_COMPILER_FLAGS "-DIL_STD" CACHE STRING "Gurobi Compiler Flags")
include
(
FindPackageHandleStandardArgs
)
# handle the QUIETLY and REQUIRED arguments and set LIBCPLEX_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args
(
GUROBI DEFAULT_MSG
GUROBI_LIBRARY GUROBI_CXX_LIBRARY GUROBI_INCLUDE_DIR
)
mark_as_advanced
(
GUROBI_INCLUDE_DIR GUROBI_LIBRARY GUROBI_CXX_LIBRARY
)
endif
(
GUROBI_INCLUDE_DIR
)
IF
(
UNIX
)
IF
(
GUROBI_INCLUDE_DIR AND NOT GUROBI_LIBRARY
)
IF
(
NOT DEFINED ENV{GUROBI_HOME}
)
message
(
FATAL_ERROR
"Environment variable GUROBI_HOME not set. Set it so I can find the gurobi libs in
\$
{GUROBI_HOME}/lib/."
)
ENDIF
()
SET
(
GUROBI_LIBRARY_DIR
"$ENV{GUROBI_HOME}/lib/"
CACHE PATH
"Path to GUROBI Library"
)
IF
(
EXISTS
"
${
GUROBI_LIBRARY_DIR
}
/libgurobi45.so"
)
SET
(
GUROBI_LIBRARY
"gurobi45;gurobi_c++;pthread"
CACHE STRING
"GUROBI Libraries"
)
ELSEIF
(
EXISTS
"
${
GUROBI_LIBRARY_DIR
}
/libgurobi46.so"
)
SET
(
GUROBI_LIBRARY
"gurobi46;gurobi_c++;pthread"
CACHE STRING
"GUROBI Libraries"
)
ELSEIF
(
EXISTS
"
${
GUROBI_LIBRARY_DIR
}
/libgurobi50.so"
)
SET
(
GUROBI_LIBRARY
"gurobi50;gurobi_c++;pthread"
CACHE STRING
"GUROBI Libraries"
)
ELSEIF
(
EXISTS
"
${
GUROBI_LIBRARY_DIR
}
/libgurobi50.dylib"
)
SET
(
GUROBI_LIBRARY
"gurobi50;gurobi_c++;pthread"<