You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Conception/drake-master/cmake/modules/FindGurobi.cmake

67 lines
1.6 KiB

# -*- mode: cmake -*-
# vi: set ft=cmake :
file(GLOB _GUROBI_SEARCH_PATHS
/Library/gurobi95*/macos_universal2
/opt/gurobi95*/linux64
/opt/gurobi95*/power64
)
find_path(Gurobi_INCLUDE_DIR NAMES gurobi_c.h
PATHS
${_GUROBI_SEARCH_PATHS}
ENV GUROBI_HOME
PATH_SUFFIXES include
)
file(STRINGS "${Gurobi_INCLUDE_DIR}/gurobi_c.h" _GUROBI_VERSION_STRINGS
REGEX "^#define GRB_VERSION_(MAJOR|MINOR|TECHNICAL)[ ]+[0-9]+$"
)
string(REGEX REPLACE ".*;#define GRB_VERSION_MAJOR[ ]+([0-9]+);.*"
"\\1" Gurobi_VERSION_MAJOR ";${_GUROBI_VERSION_STRINGS};"
)
string(REGEX REPLACE ".*;#define GRB_VERSION_MINOR[ ]+([0-9]+);.*"
"\\1" Gurobi_VERSION_MINOR ";${_GUROBI_VERSION_STRINGS};"
)
string(REGEX REPLACE ".*;#define GRB_VERSION_TECHNICAL[ ]+([0-9]+);.*"
"\\1" Gurobi_VERSION_PATCH ";${_GUROBI_VERSION_STRINGS};"
)
unset(_GUROBI_VERSION_STRINGS)
set(Gurobi_VERSION
"${Gurobi_VERSION_MAJOR}.${Gurobi_VERSION_MINOR}.${Gurobi_VERSION_PATCH}"
)
get_filename_component(_GUROBI_ROOT "${Gurobi_INCLUDE_DIR}" DIRECTORY)
find_library(Gurobi_LIBRARY
NAMES "gurobi${Gurobi_VERSION_MAJOR}${Gurobi_VERSION_MINOR}"
HINTS "${_GUROBI_ROOT}"
PATHS
${_GUROBI_SEARCH_PATHS}
ENV GUROBI_HOME
PATH_SUFFIXES lib
)
unset(_GUROBI_ROOT)
unset(_GUROBI_SEARCH_PATHS)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Gurobi
FOUND_VAR Gurobi_FOUND
REQUIRED_VARS Gurobi_INCLUDE_DIR Gurobi_LIBRARY
VERSION_VAR Gurobi_VERSION
)
if(Gurobi_FOUND)
set(Gurobi_INCLUDE_DIRS "${Gurobi_INCLUDE_DIR}")
set(Gurobi_LIBRARIES "${Gurobi_LIBRARY}")
mark_as_advanced(Gurobi_INCLUDE_DIR Gurobi_LIBRARY)
endif()