cmake/FindGLPK.cmake
author Peter Kovacs <kpeter@inf.elte.hu>
Wed, 29 Apr 2009 16:54:27 +0200
changeset 689 111698359429
parent 496 17d918051964
child 674 20dac2104519
permissions -rw-r--r--
Less map copying in NetworkSimplex (#234)

- The graph is copied in the constructor instead of the init() function.
It must not be modified after the class is constructed.
- The maps are copied once (instead of twice).
- Remove FlowMap, PotentialMap typedefs and flowMap(), pontentialMap()
setter functions.
- flowMap() and potentialMap() query functions copy the values into the
given map (reference) instead of returning a const reference to a
previously constructed map.
     1 SET(GLPK_REGKEY "[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Glpk;InstallPath]")
     2 GET_FILENAME_COMPONENT(GLPK_ROOT_PATH ${GLPK_REGKEY} ABSOLUTE)
     3 
     4 FIND_PATH(GLPK_INCLUDE_DIR
     5   glpk.h
     6   PATHS ${GLPK_REGKEY}/include)
     7 
     8 FIND_LIBRARY(GLPK_LIBRARY
     9   NAMES glpk
    10   PATHS ${GLPK_REGKEY}/lib)
    11 
    12 INCLUDE(FindPackageHandleStandardArgs)
    13 FIND_PACKAGE_HANDLE_STANDARD_ARGS(GLPK DEFAULT_MSG GLPK_LIBRARY GLPK_INCLUDE_DIR)
    14 
    15 IF(GLPK_FOUND)
    16   SET(GLPK_INCLUDE_DIRS ${GLPK_INCLUDE_DIR})
    17   SET(GLPK_LIBRARIES ${GLPK_LIBRARY})
    18   SET(GLPK_BIN_DIR ${GLPK_ROOT_PATH}/bin)
    19 ENDIF(GLPK_FOUND)
    20 
    21 MARK_AS_ADVANCED(GLPK_LIBRARY GLPK_INCLUDE_DIR GLPK_BIN_DIR)
    22 
    23 IF(GLPK_FOUND)
    24   SET(HAVE_LP TRUE)
    25   SET(HAVE_MIP TRUE)
    26   SET(HAVE_GLPK TRUE)
    27 ENDIF(GLPK_FOUND)