COIN-OR::LEMON - Graph Library

source: lemon/lemon/CMakeLists.txt @ 1113:53c0dd387001

Last change on this file since 1113:53c0dd387001 was 1113:53c0dd387001, checked in by Alpar Juttner <alpar@…>, 13 years ago

Support shared library build (#433)

File size: 1.6 KB
Line 
1INCLUDE_DIRECTORIES(
2  ${PROJECT_SOURCE_DIR}
3  ${PROJECT_BINARY_DIR}
4)
5
6CONFIGURE_FILE(
7  ${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake
8  ${CMAKE_CURRENT_BINARY_DIR}/config.h
9)
10
11CONFIGURE_FILE(
12  ${CMAKE_CURRENT_SOURCE_DIR}/lemon.pc.cmake
13  ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
14  @ONLY
15)
16
17SET(LEMON_SOURCES
18  arg_parser.cc
19  base.cc
20  color.cc
21  lp_base.cc
22  lp_skeleton.cc
23  random.cc
24  bits/windows.cc
25)
26
27IF(LEMON_HAVE_GLPK)
28  SET(LEMON_SOURCES ${LEMON_SOURCES} glpk.cc)
29  INCLUDE_DIRECTORIES(${GLPK_INCLUDE_DIRS})
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)
34  ENDIF()
35ENDIF()
36
37IF(LEMON_HAVE_CPLEX)
38  SET(LEMON_SOURCES ${LEMON_SOURCES} cplex.cc)
39  INCLUDE_DIRECTORIES(${CPLEX_INCLUDE_DIRS})
40ENDIF()
41
42IF(LEMON_HAVE_CLP)
43  SET(LEMON_SOURCES ${LEMON_SOURCES} clp.cc)
44  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
45ENDIF()
46
47IF(LEMON_HAVE_CBC)
48  SET(LEMON_SOURCES ${LEMON_SOURCES} cbc.cc)
49  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
50ENDIF()
51
52ADD_LIBRARY(lemon ${LEMON_SOURCES})
53IF(UNIX)
54  SET_TARGET_PROPERTIES(lemon PROPERTIES OUTPUT_NAME emon)
55ENDIF()
56
57INSTALL(
58  TARGETS lemon
59  ARCHIVE DESTINATION lib
60  LIBRARY DESTINATION lib
61  COMPONENT library
62)
63
64INSTALL(
65  DIRECTORY . bits concepts
66  DESTINATION include/lemon
67  COMPONENT headers
68  FILES_MATCHING PATTERN "*.h"
69)
70
71INSTALL(
72  FILES ${CMAKE_CURRENT_BINARY_DIR}/config.h
73  DESTINATION include/lemon
74  COMPONENT headers
75)
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.