gravatar
ladanyi@tmit.bme.hu
ladanyi@tmit.bme.hu
Minor CMake improvements * Use the empty ELSE(), ENDIF(), ENDMACRO(), etc. syntax since this improves readability and requires less typing. * Use FIND_PACKAGE() instead of INCLUDE(). * Use the value of CMAKE_COMMAND variable instead of cmake, since this works even if cmake is not in the PATH.
0 6 0
default
6 files changed with 58 insertions and 45 deletions:
↑ Collapse diff ↑
Show white space 6 line context
... ...
@@ -22,8 +22,8 @@
22 22

	
23 23
SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
24 24

	
25
INCLUDE(FindDoxygen)
26
INCLUDE(FindGhostscript)
25
FIND_PACKAGE(Doxygen)
26
FIND_PACKAGE(Ghostscript)
27 27
FIND_PACKAGE(GLPK 4.33)
28 28
FIND_PACKAGE(CPLEX)
29 29
FIND_PACKAGE(COIN)
... ...
@@ -40,7 +40,7 @@
40 40
  ADD_SUBDIRECTORY(tools)
41 41
  ADD_SUBDIRECTORY(doc)
42 42
  ADD_SUBDIRECTORY(test)
43
ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
43
ENDIF()
44 44

	
45 45
CONFIGURE_FILE(
46 46
  ${PROJECT_SOURCE_DIR}/cmake/LEMONConfig.cmake.in
... ...
@@ -57,10 +57,9 @@
57 57
    FILES ${PROJECT_BINARY_DIR}/cmake/LEMONConfig.cmake
58 58
    DESTINATION cmake
59 59
  )
60
ENDIF(UNIX)
60
ENDIF()
61 61

	
62
IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
63
  IF(WIN32)
62
IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR} AND WIN32)
64 63
    SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
65 64
    SET(CPACK_PACKAGE_VENDOR "EGRES")
66 65
    SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
... ...
@@ -125,5 +124,4 @@
125 124
      ")
126 125

	
127 126
    INCLUDE(CPack)
128
  ENDIF(WIN32)
129
ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
127
ENDIF()
Show white space 6 line context
... ...
@@ -3,14 +3,17 @@
3 3
  ${PROJECT_BINARY_DIR}
4 4
)
5 5

	
6
LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/lemon)
6
LINK_DIRECTORIES(
7
  ${PROJECT_BINARY_DIR}/lemon
8
)
7 9

	
8 10
SET(DEMOS
9 11
  arg_parser_demo
10 12
  graph_to_eps_demo
11
  lgf_demo)
13
  lgf_demo
14
)
12 15

	
13 16
FOREACH(DEMO_NAME ${DEMOS})
14 17
  ADD_EXECUTABLE(${DEMO_NAME} ${DEMO_NAME}.cc)
15 18
  TARGET_LINK_LIBRARIES(${DEMO_NAME} lemon)
16
ENDFOREACH(DEMO_NAME)
19
ENDFOREACH()
Show white space 6 line context
... ...
@@ -46,6 +46,6 @@
46 46
      DESTINATION doc
47 47
      COMPONENT html_documentation
48 48
    )
49
  ENDIF(UNIX)
49
  ENDIF()
50 50

	
51
ENDIF(DOXYGEN_EXECUTABLE AND GHOSTSCRIPT_EXECUTABLE)
51
ENDIF()
Show white space 6 line context
... ...
@@ -25,28 +25,28 @@
25 25
    INSTALL(FILES ${GLPK_BIN_DIR}/glpk.dll DESTINATION bin)
26 26
    INSTALL(FILES ${GLPK_BIN_DIR}/libltdl3.dll DESTINATION bin)
27 27
    INSTALL(FILES ${GLPK_BIN_DIR}/zlib1.dll DESTINATION bin)
28
  ENDIF(WIN32)
29
ENDIF(LEMON_HAVE_GLPK)
28
  ENDIF()
29
ENDIF()
30 30

	
31 31
IF(LEMON_HAVE_CPLEX)
32 32
  SET(LEMON_SOURCES ${LEMON_SOURCES} cplex.cc)
33 33
  INCLUDE_DIRECTORIES(${CPLEX_INCLUDE_DIRS})
34
ENDIF(LEMON_HAVE_CPLEX)
34
ENDIF()
35 35

	
36 36
IF(LEMON_HAVE_CLP)
37 37
  SET(LEMON_SOURCES ${LEMON_SOURCES} clp.cc)
38 38
  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
39
ENDIF(LEMON_HAVE_CLP)
39
ENDIF()
40 40

	
41 41
IF(LEMON_HAVE_CBC)
42 42
  SET(LEMON_SOURCES ${LEMON_SOURCES} cbc.cc)
43 43
  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
44
ENDIF(LEMON_HAVE_CBC)
44
ENDIF()
45 45

	
46 46
ADD_LIBRARY(lemon ${LEMON_SOURCES})
47 47
IF(UNIX)
48 48
  SET_TARGET_PROPERTIES(lemon PROPERTIES OUTPUT_NAME emon)
49
ENDIF(UNIX)
49
ENDIF()
50 50

	
51 51
INSTALL(
52 52
  TARGETS lemon
Show white space 6 line context
... ...
@@ -3,7 +3,9 @@
3 3
  ${PROJECT_BINARY_DIR}
4 4
)
5 5

	
6
LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/lemon)
6
LINK_DIRECTORIES(
7
  ${PROJECT_BINARY_DIR}/lemon
8
)
7 9

	
8 10
SET(TESTS
9 11
  adaptors_test
... ...
@@ -35,20 +37,23 @@
35 37
  random_test
36 38
  suurballe_test
37 39
  time_measure_test
38
  unionfind_test)
40
  unionfind_test
41
)
39 42

	
40 43
IF(LEMON_HAVE_LP)
41 44
  ADD_EXECUTABLE(lp_test lp_test.cc)
42 45
  SET(LP_TEST_LIBS lemon)
46

	
43 47
  IF(LEMON_HAVE_GLPK)
44 48
    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${GLPK_LIBRARIES})
45
  ENDIF(LEMON_HAVE_GLPK)
49
  ENDIF()
46 50
  IF(LEMON_HAVE_CPLEX)
47 51
    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${CPLEX_LIBRARIES})
48
  ENDIF(LEMON_HAVE_CPLEX)
52
  ENDIF()
49 53
  IF(LEMON_HAVE_CLP)
50 54
    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${COIN_CLP_LIBRARIES})
51
  ENDIF(LEMON_HAVE_CLP)
55
  ENDIF()
56

	
52 57
  TARGET_LINK_LIBRARIES(lp_test ${LP_TEST_LIBS})
53 58
  ADD_TEST(lp_test lp_test)
54 59

	
... ...
@@ -56,32 +61,35 @@
56 61
    GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
57 62
    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
58 63
    ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
59
      COMMAND cmake -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
60
      COMMAND cmake -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
61
      COMMAND cmake -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
64
      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
65
      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
66
      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
62 67
    )
63
  ENDIF(WIN32 AND LEMON_HAVE_GLPK)
68
  ENDIF()
69

	
64 70
  IF(WIN32 AND LEMON_HAVE_CPLEX)
65 71
    GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
66 72
    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
67 73
    ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
68
      COMMAND cmake -E copy ${CPLEX_BIN_DIR}/cplex91.dll ${TARGET_PATH}
74
      COMMAND ${CMAKE_COMMAND} -E copy ${CPLEX_BIN_DIR}/cplex91.dll ${TARGET_PATH}
69 75
    )
70
  ENDIF(WIN32 AND LEMON_HAVE_CPLEX)
71
ENDIF(LEMON_HAVE_LP)
76
  ENDIF()
77
ENDIF()
72 78

	
73 79
IF(LEMON_HAVE_MIP)
74 80
  ADD_EXECUTABLE(mip_test mip_test.cc)
75 81
  SET(MIP_TEST_LIBS lemon)
82

	
76 83
  IF(LEMON_HAVE_GLPK)
77 84
    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${GLPK_LIBRARIES})
78
  ENDIF(LEMON_HAVE_GLPK)
85
  ENDIF()
79 86
  IF(LEMON_HAVE_CPLEX)
80 87
    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${CPLEX_LIBRARIES})
81
  ENDIF(LEMON_HAVE_CPLEX)
88
  ENDIF()
82 89
  IF(LEMON_HAVE_CBC)
83 90
    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${COIN_CBC_LIBRARIES})
84
  ENDIF(LEMON_HAVE_CBC)
91
  ENDIF()
92

	
85 93
  TARGET_LINK_LIBRARIES(mip_test ${MIP_TEST_LIBS})
86 94
  ADD_TEST(mip_test mip_test)
87 95

	
... ...
@@ -89,22 +97,23 @@
89 97
    GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
90 98
    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
91 99
    ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
92
      COMMAND cmake -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
93
      COMMAND cmake -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
94
      COMMAND cmake -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
100
      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
101
      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
102
      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
95 103
    )
96
  ENDIF(WIN32 AND LEMON_HAVE_GLPK)
104
  ENDIF()
105

	
97 106
  IF(WIN32 AND LEMON_HAVE_CPLEX)
98 107
    GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
99 108
    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
100 109
    ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
101
      COMMAND cmake -E copy ${CPLEX_BIN_DIR}/cplex91.dll ${TARGET_PATH}
110
      COMMAND ${CMAKE_COMMAND} -E copy ${CPLEX_BIN_DIR}/cplex91.dll ${TARGET_PATH}
102 111
    )
103
  ENDIF(WIN32 AND LEMON_HAVE_CPLEX)
104
ENDIF(LEMON_HAVE_MIP)
112
  ENDIF()
113
ENDIF()
105 114

	
106 115
FOREACH(TEST_NAME ${TESTS})
107 116
  ADD_EXECUTABLE(${TEST_NAME} ${TEST_NAME}.cc)
108 117
  TARGET_LINK_LIBRARIES(${TEST_NAME} lemon)
109 118
  ADD_TEST(${TEST_NAME} ${TEST_NAME})
110
ENDFOREACH(TEST_NAME)
119
ENDFOREACH()
Show white space 6 line context
... ...
@@ -3,7 +3,9 @@
3 3
  ${PROJECT_BINARY_DIR}
4 4
)
5 5

	
6
LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/lemon)
6
LINK_DIRECTORIES(
7
  ${PROJECT_BINARY_DIR}/lemon
8
)
7 9

	
8 10
ADD_EXECUTABLE(lgf-gen lgf-gen.cc)
9 11
TARGET_LINK_LIBRARIES(lgf-gen lemon)
... ...
@@ -24,5 +26,6 @@
24 26
  INSTALL(
25 27
    PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/lemon-0.x-to-1.x.sh
26 28
    DESTINATION bin
27
    COMPONENT bin)
28
ENDIF(NOT WIN32)
29
    COMPONENT bin
30
  )
31
ENDIF()
0 comments (0 inline)