COIN-OR::LEMON - Graph Library

source: lemon-1.2/lemon/CMakeLists.txt @ 950:1818cc848005

Last change on this file since 950:1818cc848005 was 946:53c0dd387001, checked in by Alpar Juttner <alpar@…>, 8 years ago

Support shared library build (#433)

File size: 1.6 KB
RevLine 
[499]1INCLUDE_DIRECTORIES(
[549]2  ${PROJECT_SOURCE_DIR}
[499]3  ${PROJECT_BINARY_DIR}
4)
5
6CONFIGURE_FILE(
7  ${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake
8  ${CMAKE_CURRENT_BINARY_DIR}/config.h
9)
[225]10
[904]11CONFIGURE_FILE(
12  ${CMAKE_CURRENT_SOURCE_DIR}/lemon.pc.cmake
13  ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
14  @ONLY
15)
16
[473]17SET(LEMON_SOURCES
[225]18  arg_parser.cc
19  base.cc
20  color.cc
[473]21  lp_base.cc
22  lp_skeleton.cc
[482]23  random.cc
24  bits/windows.cc
25)
[225]26
[627]27IF(LEMON_HAVE_GLPK)
[473]28  SET(LEMON_SOURCES ${LEMON_SOURCES} glpk.cc)
[619]29  INCLUDE_DIRECTORIES(${GLPK_INCLUDE_DIRS})
[475]30  IF(WIN32)
31    INSTALL(FILES ${GLPK_BIN_DIR}/glpk.dll DESTINATION bin)
32    INSTALL(FILES ${GLPK_BIN_DIR}/libltdl3.dll DESTINATION bin)
33    INSTALL(FILES ${GLPK_BIN_DIR}/zlib1.dll DESTINATION bin)
[679]34  ENDIF()
35ENDIF()
[473]36
[627]37IF(LEMON_HAVE_CPLEX)
[620]38  SET(LEMON_SOURCES ${LEMON_SOURCES} cplex.cc)
39  INCLUDE_DIRECTORIES(${CPLEX_INCLUDE_DIRS})
[679]40ENDIF()
[620]41
[627]42IF(LEMON_HAVE_CLP)
[621]43  SET(LEMON_SOURCES ${LEMON_SOURCES} clp.cc)
44  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
[679]45ENDIF()
[621]46
[627]47IF(LEMON_HAVE_CBC)
[621]48  SET(LEMON_SOURCES ${LEMON_SOURCES} cbc.cc)
49  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
[679]50ENDIF()
[621]51
[473]52ADD_LIBRARY(lemon ${LEMON_SOURCES})
[675]53IF(UNIX)
54  SET_TARGET_PROPERTIES(lemon PROPERTIES OUTPUT_NAME emon)
[679]55ENDIF()
[473]56
[225]57INSTALL(
58  TARGETS lemon
59  ARCHIVE DESTINATION lib
[946]60  LIBRARY DESTINATION lib
[675]61  COMPONENT library
62)
[225]63
64INSTALL(
65  DIRECTORY . bits concepts
66  DESTINATION include/lemon
67  COMPONENT headers
[675]68  FILES_MATCHING PATTERN "*.h"
69)
[499]70
71INSTALL(
72  FILES ${CMAKE_CURRENT_BINARY_DIR}/config.h
73  DESTINATION include/lemon
[675]74  COMPONENT headers
75)
[904]76
77INSTALL(
78  FILES ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
79  DESTINATION lib/pkgconfig
80)
81
Note: See TracBrowser for help on using the repository browser.