##// END OF EJS Templates
Remove coverage from windows build
perrinel -
r74:325ad50ffecd
parent child
Show More
@@ -1,145 +1,147
1 1
2 2 ## core - CMakeLists.txt
3 3 STRING(TOLOWER ${CMAKE_PROJECT_NAME} LIBRARY_PREFFIX)
4 4 SET(SQPCORE_LIBRARY_NAME "${LIBRARY_PREFFIX}_core${DEBUG_SUFFIX}")
5 5 SET(SOURCES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/")
6 6 SET(INCLUDES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include/")
7 7
8 8 # Include core directory
9 9 include_directories("${INCLUDES_DIR}")
10 10
11 11 # Set a variable to display a warning in the version files.
12 12 SET(SCIQLOP_CMAKE_GENERATION_WARNING "DON'T CHANGE THIS FILE. AUTOGENERATED BY CMAKE.")
13 13 # Generate the version file from the cmake version variables. The version
14 14 # variables are defined in the cmake/sciqlop_version.cmake file.
15 15 CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/resources/Version.h.in"
16 16 "${INCLUDES_DIR}/Version.h")
17 17 CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/resources/Version.cpp.in"
18 18 "${SOURCES_DIR}/Version.cpp")
19 19
20 20 # Find dependent modules
21 21 find_package(sciqlop-plugin)
22 22 INCLUDE_DIRECTORIES(${SCIQLOP-PLUGIN_INCLUDE_DIR})
23 23
24 24 #
25 25 # Find Qt modules
26 26 #
27 27 SCIQLOP_FIND_QT(Core)
28 28
29 29 #
30 30 # Compile the library library
31 31 #
32 32 FILE (GLOB_RECURSE MODULE_SOURCES
33 33 ${INCLUDES_DIR}/*.h
34 34 ${SOURCES_DIR}/*.c
35 35 ${SOURCES_DIR}/*.cpp
36 36 ${SOURCES_DIR}/*.h)
37 37
38 38 ADD_LIBRARY(${SQPCORE_LIBRARY_NAME} ${MODULE_SOURCES})
39 39 set_property(TARGET ${SQPCORE_LIBRARY_NAME} PROPERTY CXX_STANDARD 14)
40 40 set_property(TARGET ${SQPCORE_LIBRARY_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)
41 41 TARGET_LINK_LIBRARIES(${SQPCORE_LIBRARY_NAME})
42 42 qt5_use_modules(${SQPCORE_LIBRARY_NAME} Core)
43 43
44 44 # From cmake documentation: http://www.cmake.org/cmake/help/v3.0/manual/cmake-buildsystem.7.html
45 45 # Entries in the COMPILE_DEFINITIONS are prefixed with -D or /D and added to the compile line in an unspecified order.
46 46 # The DEFINE_SYMBOL target property is also added as a compile definition as a special convenience case for SHARED and MODULE library targets
47 47 IF(BUILD_SHARED_LIBS)
48 48 SET_TARGET_PROPERTIES(${SQPCORE_LIBRARY_NAME} PROPERTIES COMPILE_DEFINITIONS "SCIQLOP_EXPORT")
49 49 ELSE()
50 50 TARGET_COMPILE_DEFINITIONS(${SQPCORE_LIBRARY_NAME} PUBLIC "SCIQLOP_STATIC_LIBRARIES")
51 51 ENDIF()
52 52
53 53 # Set the variable to parent scope so that the other projects can copy the
54 54 # dependent shared libraries
55 55 SCIQLOP_SET_TO_PARENT_SCOPE(SQPCORE_LIBRARY_NAME)
56 56
57 57 # Copy extern shared libraries to the lib folder
58 58 SCIQLOP_COPY_TO_TARGET(LIBRARY ${SQPCORE_LIBRARY_NAME} ${EXTERN_SHARED_LIBRARIES})
59 59
60 60 # Add the files to the list of files to be analyzed
61 61 LIST(APPEND CHECKSTYLE_INPUT_FILES ${MODULE_SOURCES})
62 62 SCIQLOP_SET_TO_PARENT_SCOPE(CHECKSTYLE_INPUT_FILES)
63 63 # Vera++ exclusion files
64 64 LIST(APPEND CHECKSTYLE_EXCLUSION_FILES ${CMAKE_CURRENT_SOURCE_DIR}/vera-exclusions/exclusions.txt)
65 65 SCIQLOP_SET_TO_PARENT_SCOPE(CHECKSTYLE_EXCLUSION_FILES)
66 66
67 67 #
68 68 # Compile the tests
69 69 #
70 70 IF(BUILD_TESTS)
71 71 INCLUDE_DIRECTORIES(${SOURCES_DIR})
72 72 FILE (GLOB_RECURSE TESTS_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/Test*.cpp)
73 73 FILE (GLOB_RECURSE TESTS_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/Test*.h)
74 74 SET( TEST_LIBRARIES ${SQPCORE_LIBRARY_NAME})
75 75
76 76 SET(TARGETS_COV)
77 77 FOREACH( testFile ${TESTS_SOURCES} )
78 78 GET_FILENAME_COMPONENT( testDirectory ${testFile} DIRECTORY )
79 79 GET_FILENAME_COMPONENT( testName ${testFile} NAME_WE )
80 80
81 81 # Add to the list of sources files all the sources in the same
82 82 # directory that aren't another test
83 83 FILE (GLOB currentTestSources
84 84 ${testDirectory}/*.c
85 85 ${testDirectory}/*.cpp
86 86 ${testDirectory}/*.h)
87 87 LIST (REMOVE_ITEM currentTestSources ${TESTS_SOURCES})
88 88 # LIST (REMOVE_ITEM currentTestSources ${TESTS_HEADERS})
89 89
90 90 ADD_EXECUTABLE(${testName} ${testFile} ${currentTestSources})
91 91 set_property(TARGET ${testName} PROPERTY CXX_STANDARD 14)
92 92 set_property(TARGET ${testName} PROPERTY CXX_STANDARD_REQUIRED ON)
93 93 TARGET_LINK_LIBRARIES( ${testName} ${TEST_LIBRARIES} )
94 94 qt5_use_modules(${testName} Test)
95 95
96 96 ADD_TEST( NAME ${testName} COMMAND ${testName} )
97 97
98 98 SCIQLOP_COPY_TO_TARGET(RUNTIME ${testName} ${EXTERN_SHARED_LIBRARIES})
99 99 set(Coverage_NAME ${testName})
100 SETUP_TARGET_FOR_COVERAGE(TARGET ${testName}_coverage OUTPUT ${testFile}-path NAME ${testFile} EXECUTABLE ${testName})
101 LIST( APPEND TARGETS_COV ${testName}_coverage)
100 if(UNIX)
101 SETUP_TARGET_FOR_COVERAGE(TARGET ${testName}_coverage OUTPUT ${testFile}-path NAME ${testFile} EXECUTABLE ${testName})
102 LIST( APPEND TARGETS_COV ${testName}_coverage)
103 endif(UNIX)
102 104
103 105 ENDFOREACH( testFile )
104 106
105 107 add_custom_target(coverage)
106 108
107 109 FOREACH( target_cov ${TARGETS_COV} )
108 110 add_custom_command(TARGET coverage PRE_BUILD COMMAND make ${target_cov})
109 111 ENDFOREACH( target_cov )
110 112
111 113 LIST(APPEND testFilesToFormat ${TESTS_SOURCES})
112 114 LIST(APPEND testFilesToFormat ${TESTS_HEADERS})
113 115 LIST(APPEND FORMATTING_INPUT_FILES ${testFilesToFormat})
114 116 SCIQLOP_SET_TO_PARENT_SCOPE(FORMATTING_INPUT_FILES)
115 117 ENDIF(BUILD_TESTS)
116 118
117 119 #
118 120 # Set the files that must be formatted by clang-format.
119 121 #
120 122 LIST (APPEND FORMATTING_INPUT_FILES ${MODULE_SOURCES})
121 123 SCIQLOP_SET_TO_PARENT_SCOPE(FORMATTING_INPUT_FILES)
122 124
123 125 #
124 126 # Set the directories that doxygen must browse to generate the
125 127 # documentation.
126 128 #
127 129 # Source directories:
128 130 LIST (APPEND DOXYGEN_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/docs")
129 131 LIST (APPEND DOXYGEN_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/src")
130 132 SCIQLOP_SET_TO_PARENT_SCOPE(DOXYGEN_INPUT_DIRS)
131 133 # Source directories to exclude from the documentation generation
132 134 #LIST (APPEND DOXYGEN_EXCLUDE_PATTERNS "${CMAKE_CURRENT_SOURCE_DIR}/path/to/subdir/*")
133 135 SCIQLOP_SET_TO_PARENT_SCOPE(DOXYGEN_EXCLUDE_PATTERNS)
134 136
135 137 #
136 138 # Set the directories with the sources to analyze and propagate the
137 139 # modification to the parent scope
138 140 #
139 141 # Source directories to analyze:
140 142 LIST (APPEND ANALYSIS_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/src")
141 143 LIST (APPEND ANALYSIS_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/tests")
142 144 SCIQLOP_SET_TO_PARENT_SCOPE(ANALYSIS_INPUT_DIRS)
143 145 # Source directories to exclude from the analysis
144 146 #LIST (APPEND ANALYSIS_EXCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/path/to/subdir")
145 147 SCIQLOP_SET_TO_PARENT_SCOPE(ANALYSIS_EXCLUDE_DIRS)
General Comments 5
Under Review
author

Pull request updated. Auto status change to "Under Review"

Changed commits:
  * 1 added
  * 0 removed

Changed files:
  * M core/CMakeLists.txt
Approved
author

Status change > Approved

You need to be logged in to leave comments. Login now