comparison CMakeLists.txt @ 71:88f408092b6d

Support for code coverage analysis with gcov.
author Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
date Thu, 31 Jan 2013 16:15:39 +0100
parents c2ad34480216
children b4185273c14a
comparison
equal deleted inserted replaced
70:c2ad34480216 71:88f408092b6d
1 PROJECT(DeDupe) 1 PROJECT(DeDupe)
2 CMAKE_MINIMUM_REQUIRED(VERSION 2.6.4) 2 CMAKE_MINIMUM_REQUIRED(VERSION 2.6.4)
3 3
4 #INCLUDE(PrecompiledHeader.cmake) 4 #INCLUDE(PrecompiledHeader.cmake)
5 5
6 OPTION(COVERAGE "Enable code coverage analysis" OFF)
7
8 IF(COVERAGE)
9 SET(COVERAGE_FLAGS "--coverage")
10 ENDIF()
11
6 MACRO(NEW_TEST file) 12 MACRO(NEW_TEST file)
7 ADD_EXECUTABLE(${file} ${file}.cpp ${TEST_SOURCES}) 13 ADD_EXECUTABLE(${file} ${file}.cpp ${TEST_SOURCES})
8 ADD_TEST(${file} ${file}) 14 ADD_TEST(${file} ${file})
9 TARGET_LINK_LIBRARIES(${file} ${QT_LIBRARIES} ${Boost_LIBRARIES}) 15 TARGET_LINK_LIBRARIES(${file} ${QT_LIBRARIES} ${Boost_LIBRARIES} ${COVERAGE_FLAGS})
10 ENDMACRO() 16 ENDMACRO()
11 17
12 SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMake_Modules/") 18 SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMake_Modules/")
13 19
14 SET(USE_HEADERS_FOR_BOOST_TEST OFF) 20 SET(USE_HEADERS_FOR_BOOST_TEST OFF)
106 112
107 #Optimization level 113 #Optimization level
108 #ADD_DEFINITIONS("-O3") 114 #ADD_DEFINITIONS("-O3")
109 ADD_DEFINITIONS("-g2 -fno-inline") 115 ADD_DEFINITIONS("-g2 -fno-inline")
110 116
117 ADD_DEFINITIONS(${COVERAGE_FLAGS})
118 SET(CMAKE_EXE_LINKER_FLAGS "${COVERAGE_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}")
119
111 ADD_EXECUTABLE(DeDupe Apps/DeDupe.cpp ${SOURCES} ${MOC_SOURCES}) 120 ADD_EXECUTABLE(DeDupe Apps/DeDupe.cpp ${SOURCES} ${MOC_SOURCES})
112 TARGET_LINK_LIBRARIES( 121 TARGET_LINK_LIBRARIES(
113 DeDupe 122 DeDupe
114 ${QT_LIBRARIES} 123 ${QT_LIBRARIES}
115 ${SQLITE3_LIBRARIES} 124 ${SQLITE3_LIBRARIES}