Changes in CMakeLists.txt [744:f8c468367dab:902:a725503acfe9] in lemon-main
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CMakeLists.txt
r744 r902 3 3 SET(PROJECT_NAME "LEMON") 4 4 PROJECT(${PROJECT_NAME}) 5 6 INCLUDE(FindPythonInterp) 5 7 6 8 IF(EXISTS ${PROJECT_SOURCE_DIR}/cmake/version.cmake) … … 10 12 ELSE() 11 13 EXECUTE_PROCESS( 14 COMMAND ${PYTHON_EXECUTABLE} ./scripts/chg-len.py 15 WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} 16 OUTPUT_VARIABLE HG_REVISION_PATH 17 ERROR_QUIET 18 OUTPUT_STRIP_TRAILING_WHITESPACE 19 ) 20 EXECUTE_PROCESS( 12 21 COMMAND hg id -i 13 22 WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} … … 17 26 ) 18 27 IF(HG_REVISION STREQUAL "") 19 SET(HG_REVISION "hg-tip") 28 SET(HG_REVISION_ID "hg-tip") 29 ELSE() 30 IF(HG_REVISION_PATH STREQUAL "") 31 SET(HG_REVISION_ID ${HG_REVISION}) 32 ELSE() 33 SET(HG_REVISION_ID ${HG_REVISION_PATH}.${HG_REVISION}) 34 ENDIF() 20 35 ENDIF() 21 SET(LEMON_VERSION ${HG_REVISION } CACHE STRING "LEMON version string.")36 SET(LEMON_VERSION ${HG_REVISION_ID} CACHE STRING "LEMON version string.") 22 37 ENDIF() 23 38 … … 32 47 FIND_PACKAGE(COIN) 33 48 49 IF(DEFINED ENV{LEMON_CXX_WARNING}) 50 SET(CXX_WARNING $ENV{LEMON_CXX_WARNING}) 51 ELSE() 52 IF(CMAKE_COMPILER_IS_GNUCXX) 53 SET(CXX_WARNING "-Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -ansi -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas") 54 SET(CMAKE_CXX_FLAGS_DEBUG CACHE STRING "-ggdb") 55 SET(CMAKE_C_FLAGS_DEBUG CACHE STRING "-ggdb") 56 ELSEIF(MSVC) 57 # This part is unnecessary 'casue the same is set by the lemon/core.h. 58 # Still keep it as an example. 59 SET(CXX_WARNING "/wd4250 /wd4355 /wd4503 /wd4800 /wd4996") 60 # Suppressed warnings: 61 # C4250: 'class1' : inherits 'class2::member' via dominance 62 # C4355: 'this' : used in base member initializer list 63 # C4503: 'function' : decorated name length exceeded, name was truncated 64 # C4800: 'type' : forcing value to bool 'true' or 'false' 65 # (performance warning) 66 # C4996: 'function': was declared deprecated 67 ELSE() 68 SET(CXX_WARNING "-Wall -W") 69 ENDIF() 70 ENDIF() 71 SET(LEMON_CXX_WARNING_FLAGS ${CXX_WARNING} CACHE STRING "LEMON warning flags.") 72 73 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LEMON_CXX_WARNING_FLAGS}") 74 75 SET( CMAKE_CXX_FLAGS_MAINTAINER "-Werror -ggdb" CACHE STRING 76 "Flags used by the C++ compiler during maintainer builds." 77 FORCE ) 78 SET( CMAKE_C_FLAGS_MAINTAINER "-Werror" CACHE STRING 79 "Flags used by the C compiler during maintainer builds." 80 FORCE ) 81 SET( CMAKE_EXE_LINKER_FLAGS_MAINTAINER 82 "-Wl,--warn-unresolved-symbols,--warn-once" CACHE STRING 83 "Flags used for linking binaries during maintainer builds." 84 FORCE ) 85 SET( CMAKE_SHARED_LINKER_FLAGS_MAINTAINER 86 "-Wl,--warn-unresolved-symbols,--warn-once" CACHE STRING 87 "Flags used by the shared libraries linker during maintainer builds." 88 FORCE ) 89 MARK_AS_ADVANCED( 90 CMAKE_CXX_FLAGS_MAINTAINER 91 CMAKE_C_FLAGS_MAINTAINER 92 CMAKE_EXE_LINKER_FLAGS_MAINTAINER 93 CMAKE_SHARED_LINKER_FLAGS_MAINTAINER ) 94 95 IF(CMAKE_CONFIGURATION_TYPES) 96 LIST(APPEND CMAKE_CONFIGURATION_TYPES Maintainer) 97 LIST(REMOVE_DUPLICATES CMAKE_CONFIGURATION_TYPES) 98 SET(CMAKE_CONFIGURATION_TYPES "${CMAKE_CONFIGURATION_TYPES}" CACHE STRING 99 "Add the configurations that we need" 100 FORCE) 101 endif() 102 103 IF(NOT CMAKE_BUILD_TYPE) 104 SET(CMAKE_BUILD_TYPE "Release") 105 ENDIF() 106 107 SET( CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}" CACHE STRING 108 "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel Maintainer." 109 FORCE ) 110 111 34 112 INCLUDE(CheckTypeSize) 35 113 CHECK_TYPE_SIZE("long long" LONG_LONG) 36 114 SET(LEMON_HAVE_LONG_LONG ${HAVE_LONG_LONG}) 37 115 38 INCLUDE(FindPythonInterp)39 40 116 ENABLE_TESTING() 117 118 IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer") 119 ADD_CUSTOM_TARGET(check ALL COMMAND ${CMAKE_CTEST_COMMAND}) 120 ELSE() 121 ADD_CUSTOM_TARGET(check COMMAND ${CMAKE_CTEST_COMMAND}) 122 ENDIF() 41 123 42 124 ADD_SUBDIRECTORY(lemon) … … 65 147 ENDIF() 66 148 67 IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR} AND WIN32)149 IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) 68 150 SET(CPACK_PACKAGE_NAME ${PROJECT_NAME}) 69 151 SET(CPACK_PACKAGE_VENDOR "EGRES")
Note: See TracChangeset
for help on using the changeset viewer.