COIN-OR::LEMON - Graph Library

Changeset 679:9c7639f3a741 in lemon-main for CMakeLists.txt


Ignore:
Timestamp:
05/29/09 13:44:37 (15 years ago)
Author:
Akos Ladanyi <ladanyi@…>
Branch:
default
Phase:
public
Message:

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.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • CMakeLists.txt

    r678 r679  
    2323SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
    2424
    25 INCLUDE(FindDoxygen)
    26 INCLUDE(FindGhostscript)
     25FIND_PACKAGE(Doxygen)
     26FIND_PACKAGE(Ghostscript)
    2727FIND_PACKAGE(GLPK 4.33)
    2828FIND_PACKAGE(CPLEX)
     
    4141  ADD_SUBDIRECTORY(doc)
    4242  ADD_SUBDIRECTORY(test)
    43 ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
     43ENDIF()
    4444
    4545CONFIGURE_FILE(
     
    5858    DESTINATION cmake
    5959  )
    60 ENDIF(UNIX)
     60ENDIF()
    6161
    62 IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
    63   IF(WIN32)
    64     SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
    65     SET(CPACK_PACKAGE_VENDOR "EGRES")
    66     SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
    67       "LEMON - Library for Efficient Modeling and Optimization in Networks")
    68     SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
     62IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR} AND WIN32)
     63  SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
     64  SET(CPACK_PACKAGE_VENDOR "EGRES")
     65  SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
     66    "LEMON - Library for Efficient Modeling and Optimization in Networks")
     67  SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
    6968
    70     SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
     69  SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
    7170
    72     SET(CPACK_PACKAGE_INSTALL_DIRECTORY
    73       "${PROJECT_NAME} ${PROJECT_VERSION}")
    74     SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY
    75       "${PROJECT_NAME} ${PROJECT_VERSION}")
     71  SET(CPACK_PACKAGE_INSTALL_DIRECTORY
     72    "${PROJECT_NAME} ${PROJECT_VERSION}")
     73  SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY
     74    "${PROJECT_NAME} ${PROJECT_VERSION}")
    7675
    77     SET(CPACK_COMPONENTS_ALL headers library html_documentation bin)
     76  SET(CPACK_COMPONENTS_ALL headers library html_documentation bin)
    7877
    79     SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers")
    80     SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library")
    81     SET(CPACK_COMPONENT_BIN_DISPLAY_NAME "Command line utilities")
    82     SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation")
     78  SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers")
     79  SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library")
     80  SET(CPACK_COMPONENT_BIN_DISPLAY_NAME "Command line utilities")
     81  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation")
    8382
    84     SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
    85       "C++ header files")
    86     SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION
    87       "DLL and import library")
    88     SET(CPACK_COMPONENT_BIN_DESCRIPTION
    89       "Command line utilities")
    90     SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION
    91       "Doxygen generated documentation")
     83  SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
     84    "C++ header files")
     85  SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION
     86    "DLL and import library")
     87  SET(CPACK_COMPONENT_BIN_DESCRIPTION
     88    "Command line utilities")
     89  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION
     90    "Doxygen generated documentation")
    9291
    93     SET(CPACK_COMPONENT_HEADERS_DEPENDS library)
     92  SET(CPACK_COMPONENT_HEADERS_DEPENDS library)
    9493
    95     SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
    96     SET(CPACK_COMPONENT_LIBRARY_GROUP "Development")
    97     SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation")
     94  SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
     95  SET(CPACK_COMPONENT_LIBRARY_GROUP "Development")
     96  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation")
    9897
    99     SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
    100       "Components needed to develop software using LEMON")
    101     SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION
    102       "Documentation of LEMON")
     98  SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
     99    "Components needed to develop software using LEMON")
     100  SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION
     101    "Documentation of LEMON")
    103102
    104     SET(CPACK_ALL_INSTALL_TYPES Full Developer)
     103  SET(CPACK_ALL_INSTALL_TYPES Full Developer)
    105104
    106     SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full)
    107     SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full)
    108     SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full)
     105  SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full)
     106  SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full)
     107  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full)
    109108
    110     SET(CPACK_GENERATOR "NSIS")
    111     SET(CPACK_NSIS_MUI_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis/lemon.ico")
    112     SET(CPACK_NSIS_MUI_UNIICON "${PROJECT_SOURCE_DIR}/cmake/nsis/uninstall.ico")
    113     #SET(CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis\\\\installer.bmp")
    114     SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico")
    115     SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}")
    116     SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\lemon.cs.elte.hu")
    117     SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\lemon.cs.elte.hu")
    118     SET(CPACK_NSIS_CONTACT "lemon-user@lemon.cs.elte.hu")
    119     SET(CPACK_NSIS_CREATE_ICONS_EXTRA "
    120       CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\index.html\\\"
    121       ")
    122     SET(CPACK_NSIS_DELETE_ICONS_EXTRA "
    123       !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
    124       Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
    125       ")
     109  SET(CPACK_GENERATOR "NSIS")
     110  SET(CPACK_NSIS_MUI_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis/lemon.ico")
     111  SET(CPACK_NSIS_MUI_UNIICON "${PROJECT_SOURCE_DIR}/cmake/nsis/uninstall.ico")
     112  #SET(CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis\\\\installer.bmp")
     113  SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico")
     114  SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}")
     115  SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\lemon.cs.elte.hu")
     116  SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\lemon.cs.elte.hu")
     117  SET(CPACK_NSIS_CONTACT "lemon-user@lemon.cs.elte.hu")
     118  SET(CPACK_NSIS_CREATE_ICONS_EXTRA "
     119    CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\index.html\\\"
     120    ")
     121  SET(CPACK_NSIS_DELETE_ICONS_EXTRA "
     122    !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
     123    Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
     124    ")
    126125
    127     INCLUDE(CPack)
    128   ENDIF(WIN32)
    129 ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
     126  INCLUDE(CPack)
     127ENDIF()
Note: See TracChangeset for help on using the changeset viewer.