lemon/CMakeLists.txt
author Peter Kovacs <kpeter@inf.elte.hu>
Fri, 19 Feb 2010 14:08:32 +0100
changeset 844 a6eb9698c321
parent 675 c5dc4d3124aa
child 908 10242c611190
permissions -rw-r--r--
Support tolerance technique for BellmanFord (#51)

A new operation traits class BellmanFordToleranceOperationTraits
is introduced, which uses the tolerance technique in its less()
function. This class can be used with the SetOperationTraits
named template parameter.
ladanyi@510
     1
INCLUDE_DIRECTORIES(
ladanyi@549
     2
  ${PROJECT_SOURCE_DIR}
ladanyi@510
     3
  ${PROJECT_BINARY_DIR}
ladanyi@510
     4
)
ladanyi@510
     5
ladanyi@510
     6
CONFIGURE_FILE(
ladanyi@510
     7
  ${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake
ladanyi@510
     8
  ${CMAKE_CURRENT_BINARY_DIR}/config.h
ladanyi@510
     9
)
alpar@225
    10
ladanyi@473
    11
SET(LEMON_SOURCES
alpar@225
    12
  arg_parser.cc
alpar@225
    13
  base.cc
alpar@225
    14
  color.cc
ladanyi@473
    15
  lp_base.cc
ladanyi@473
    16
  lp_skeleton.cc
alpar@491
    17
  random.cc
alpar@491
    18
  bits/windows.cc
alpar@491
    19
)
alpar@225
    20
ladanyi@627
    21
IF(LEMON_HAVE_GLPK)
ladanyi@473
    22
  SET(LEMON_SOURCES ${LEMON_SOURCES} glpk.cc)
ladanyi@619
    23
  INCLUDE_DIRECTORIES(${GLPK_INCLUDE_DIRS})
ladanyi@474
    24
  IF(WIN32)
ladanyi@474
    25
    INSTALL(FILES ${GLPK_BIN_DIR}/glpk.dll DESTINATION bin)
ladanyi@474
    26
    INSTALL(FILES ${GLPK_BIN_DIR}/libltdl3.dll DESTINATION bin)
ladanyi@474
    27
    INSTALL(FILES ${GLPK_BIN_DIR}/zlib1.dll DESTINATION bin)
ladanyi@679
    28
  ENDIF()
ladanyi@679
    29
ENDIF()
ladanyi@473
    30
ladanyi@627
    31
IF(LEMON_HAVE_CPLEX)
ladanyi@620
    32
  SET(LEMON_SOURCES ${LEMON_SOURCES} cplex.cc)
ladanyi@620
    33
  INCLUDE_DIRECTORIES(${CPLEX_INCLUDE_DIRS})
ladanyi@679
    34
ENDIF()
ladanyi@620
    35
ladanyi@627
    36
IF(LEMON_HAVE_CLP)
ladanyi@621
    37
  SET(LEMON_SOURCES ${LEMON_SOURCES} clp.cc)
ladanyi@621
    38
  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
ladanyi@679
    39
ENDIF()
ladanyi@621
    40
ladanyi@627
    41
IF(LEMON_HAVE_CBC)
ladanyi@621
    42
  SET(LEMON_SOURCES ${LEMON_SOURCES} cbc.cc)
ladanyi@621
    43
  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
ladanyi@679
    44
ENDIF()
ladanyi@621
    45
ladanyi@473
    46
ADD_LIBRARY(lemon ${LEMON_SOURCES})
ladanyi@675
    47
IF(UNIX)
ladanyi@675
    48
  SET_TARGET_PROPERTIES(lemon PROPERTIES OUTPUT_NAME emon)
ladanyi@679
    49
ENDIF()
ladanyi@473
    50
alpar@225
    51
INSTALL(
alpar@225
    52
  TARGETS lemon
alpar@225
    53
  ARCHIVE DESTINATION lib
ladanyi@675
    54
  COMPONENT library
ladanyi@675
    55
)
alpar@225
    56
alpar@225
    57
INSTALL(
alpar@225
    58
  DIRECTORY . bits concepts
alpar@225
    59
  DESTINATION include/lemon
alpar@225
    60
  COMPONENT headers
ladanyi@675
    61
  FILES_MATCHING PATTERN "*.h"
ladanyi@675
    62
)
ladanyi@510
    63
ladanyi@510
    64
INSTALL(
ladanyi@510
    65
  FILES ${CMAKE_CURRENT_BINARY_DIR}/config.h
ladanyi@510
    66
  DESTINATION include/lemon
ladanyi@675
    67
  COMPONENT headers
ladanyi@675
    68
)