cmake/FindGLPK.cmake
author Peter Kovacs <kpeter@inf.elte.hu>
Tue, 24 Mar 2009 00:18:25 +0100
changeset 596 8c3112a66878
child 611 ec817dfc2cb7
permissions -rw-r--r--
Use XTI implementation instead of ATI in NetworkSimplex (#234)

XTI (eXtended Threaded Index) is an imporved version of the widely
known ATI (Augmented Threaded Index) method for storing and updating
the spanning tree structure in Network Simplex algorithms.

In the ATI data structure three indices are stored for each node:
predecessor, thread and depth. In the XTI data structure depth is
replaced by the number of successors and the last successor
(according to the thread index).
ladanyi@473
     1
SET(GLPK_REGKEY "[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Glpk;InstallPath]")
ladanyi@473
     2
GET_FILENAME_COMPONENT(GLPK_ROOT_PATH ${GLPK_REGKEY} ABSOLUTE)
ladanyi@473
     3
ladanyi@473
     4
FIND_PATH(GLPK_INCLUDE_DIR
ladanyi@473
     5
  glpk.h
ladanyi@473
     6
  PATHS ${GLPK_REGKEY}/include)
ladanyi@473
     7
ladanyi@473
     8
FIND_LIBRARY(GLPK_LIBRARY
ladanyi@473
     9
  NAMES glpk
ladanyi@473
    10
  PATHS ${GLPK_REGKEY}/lib)
ladanyi@473
    11
ladanyi@473
    12
INCLUDE(FindPackageHandleStandardArgs)
ladanyi@473
    13
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GLPK DEFAULT_MSG GLPK_LIBRARY GLPK_INCLUDE_DIR)
ladanyi@473
    14
ladanyi@473
    15
IF(GLPK_FOUND)
ladanyi@473
    16
  SET(GLPK_LIBRARIES ${GLPK_LIBRARY})
ladanyi@473
    17
  SET(GLPK_BIN_DIR ${GLPK_ROOT_PATH}/bin)
ladanyi@473
    18
ENDIF(GLPK_FOUND)
ladanyi@473
    19
ladanyi@473
    20
MARK_AS_ADVANCED(GLPK_LIBRARY GLPK_INCLUDE_DIR GLPK_BIN_DIR)