COIN-OR::LEMON - Graph Library

Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • CMakeLists.txt

    r500 r552  
    1010PROJECT(${PROJECT_NAME})
    1111
    12 SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
     12SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
    1313
    1414INCLUDE(FindDoxygen)
    1515INCLUDE(FindGhostscript)
     16FIND_PACKAGE(GLPK 4.33)
     17
     18ADD_DEFINITIONS(-DHAVE_CONFIG_H)
     19
     20IF(MSVC)
     21  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4250 /wd4355 /wd4800 /wd4996")
     22# Suppressed warnings:
     23# C4250: 'class1' : inherits 'class2::member' via dominance
     24# C4355: 'this' : used in base member initializer list
     25# C4800: 'type' : forcing value to bool 'true' or 'false' (performance warning)
     26# C4996: 'function': was declared deprecated
     27ENDIF(MSVC)
     28
     29IF(GLPK_FOUND)
     30  SET(HAVE_LP TRUE)
     31  SET(HAVE_MIP TRUE)
     32  SET(HAVE_GLPK TRUE)
     33ENDIF(GLPK_FOUND)
    1634
    1735INCLUDE(CheckTypeSize)
     
    2139
    2240ADD_SUBDIRECTORY(lemon)
    23 ADD_SUBDIRECTORY(demo)
    24 ADD_SUBDIRECTORY(doc)
    25 ADD_SUBDIRECTORY(test)
     41IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
     42  ADD_SUBDIRECTORY(demo)
     43  ADD_SUBDIRECTORY(tools)
     44  ADD_SUBDIRECTORY(doc)
     45  ADD_SUBDIRECTORY(test)
     46ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
    2647
    27 IF(WIN32)
    28   SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
    29   SET(CPACK_PACKAGE_VENDOR "EGRES")
    30   SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
    31     "LEMON - Library of Efficient Models and Optimization in Networks")
    32   SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE")
     48IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
     49  IF(WIN32)
     50    SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
     51    SET(CPACK_PACKAGE_VENDOR "EGRES")
     52    SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
     53      "LEMON - Library of Efficient Models and Optimization in Networks")
     54    SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
    3355
    34   SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
     56    SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
    3557
    36   SET(CPACK_PACKAGE_INSTALL_DIRECTORY
    37     "${PROJECT_NAME} ${PROJECT_VERSION}")
    38   SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY
    39     "${PROJECT_NAME} ${PROJECT_VERSION}")
     58    SET(CPACK_PACKAGE_INSTALL_DIRECTORY
     59      "${PROJECT_NAME} ${PROJECT_VERSION}")
     60    SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY
     61      "${PROJECT_NAME} ${PROJECT_VERSION}")
    4062
    41   SET(CPACK_COMPONENTS_ALL headers library html_documentation)
     63    SET(CPACK_COMPONENTS_ALL headers library html_documentation bin)
    4264
    43   SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers")
    44   SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library")
    45   SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation")
     65    SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers")
     66    SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library")
     67    SET(CPACK_COMPONENT_BIN_DISPLAY_NAME "Command line utilities")
     68    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation")
    4669
    47   SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
    48     "C++ header files")
    49   SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION
    50     "DLL and import library")
    51   SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION
    52     "Doxygen generated documentation")
     70    SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
     71      "C++ header files")
     72    SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION
     73      "DLL and import library")
     74    SET(CPACK_COMPONENT_BIN_DESCRIPTION
     75      "Command line utilities")
     76    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION
     77      "Doxygen generated documentation")
    5378
    54   SET(CPACK_COMPONENT_HEADERS_DEPENDS library)
     79    SET(CPACK_COMPONENT_HEADERS_DEPENDS library)
    5580
    56   SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
    57   SET(CPACK_COMPONENT_LIBRARY_GROUP "Development")
    58   SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation")
     81    SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
     82    SET(CPACK_COMPONENT_LIBRARY_GROUP "Development")
     83    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation")
    5984
    60   SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
    61     "Components needed to develop software using LEMON")
    62   SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION
    63     "Documentation of LEMON")
     85    SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
     86      "Components needed to develop software using LEMON")
     87    SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION
     88      "Documentation of LEMON")
    6489
    65   SET(CPACK_ALL_INSTALL_TYPES Full Developer)
     90    SET(CPACK_ALL_INSTALL_TYPES Full Developer)
    6691
    67   SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full)
    68   SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full)
    69   SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full)
     92    SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full)
     93    SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full)
     94    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full)
    7095
    71   SET(CPACK_GENERATOR "NSIS")
    72   SET(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/cmake/nsis/lemon.ico")
    73   SET(CPACK_NSIS_MUI_UNIICON "${CMAKE_SOURCE_DIR}/cmake/nsis/uninstall.ico")
    74   #SET(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/cmake/nsis\\\\installer.bmp")
    75   SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico")
    76   SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}")
    77   SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\lemon.cs.elte.hu")
    78   SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\lemon.cs.elte.hu")
    79   SET(CPACK_NSIS_CONTACT "lemon-user@lemon.cs.elte.hu")
    80   SET(CPACK_NSIS_CREATE_ICONS_EXTRA "
    81     CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\index.html\\\"
    82     ")
    83   SET(CPACK_NSIS_DELETE_ICONS_EXTRA "
    84     !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
    85     Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
    86     ")
     96    SET(CPACK_GENERATOR "NSIS")
     97    SET(CPACK_NSIS_MUI_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis/lemon.ico")
     98    SET(CPACK_NSIS_MUI_UNIICON "${PROJECT_SOURCE_DIR}/cmake/nsis/uninstall.ico")
     99    #SET(CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis\\\\installer.bmp")
     100    SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico")
     101    SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}")
     102    SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\lemon.cs.elte.hu")
     103    SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\lemon.cs.elte.hu")
     104    SET(CPACK_NSIS_CONTACT "lemon-user@lemon.cs.elte.hu")
     105    SET(CPACK_NSIS_CREATE_ICONS_EXTRA "
     106      CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\index.html\\\"
     107      ")
     108    SET(CPACK_NSIS_DELETE_ICONS_EXTRA "
     109      !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
     110      Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
     111      ")
    87112
    88   INCLUDE(CPack)
    89 ENDIF(WIN32)
     113    INCLUDE(CPack)
     114  ENDIF(WIN32)
     115ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
Note: See TracChangeset for help on using the changeset viewer.