annotate CMakeLists.txt @ 77:a827f3687c4a

Compile fix Linux, wrong capitalization.
author Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
date Sat, 16 Feb 2013 19:00:54 +0100
parents 8136057988bc
children 9744ec195be3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
1 PROJECT(DeDupe)
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
2 CMAKE_MINIMUM_REQUIRED(VERSION 2.6.4)
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
3
29
ad9c92d782dd Move cmake file into CMake_Modules
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 28
diff changeset
4 #INCLUDE(PrecompiledHeader.cmake)
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
5
71
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
6 OPTION(COVERAGE "Enable code coverage analysis" OFF)
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
7
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
8 IF(COVERAGE)
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
9 SET(COVERAGE_FLAGS "--coverage")
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
10 ENDIF()
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
11
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
12 SET(ALL_TESTS)
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
13
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
14 MACRO(NEW_TEST file)
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
15 STRING(REPLACE "/" "_" TARGET ${file})
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
16 ADD_EXECUTABLE(${TARGET} ${file}.cpp ${TEST_SOURCES})
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
17 ADD_TEST(${TARGET} ${TARGET})
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
18 TARGET_LINK_LIBRARIES(${TARGET} ${QT_LIBRARIES} ${Boost_LIBRARIES}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
19 ${COVERAGE_FLAGS})
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
20
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
21 ADD_CUSTOM_COMMAND(OUTPUT "BUILD_${TARGET}"
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
22 COMMAND "${CMAKE_COMMAND}"
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
23 --build ${CMAKE_BINARY_DIR}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
24 --target ${TARGET}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
25 COMMENT "Building test ${TARGET}"
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
26 )
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
27 SET(BUILD_ALL_TESTS ${BUILD_ALL_TESTS} BUILD_${TARGET})
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
28
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
29 SET(ALL_TESTS ${ALL_TESTS} RUN_${TARGET})
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
30 ADD_CUSTOM_TARGET(RUN_${TARGET} ${CMAKE_BINARY_DIR}/${TARGET} --log_level=nothing --report_level=no
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
31 DEPENDS zero_counters_test_with_base
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
32 BUILD_${TARGET}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
33 COMMENT "Running test ${TARGET}"
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
34
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
35 )
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
36
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
37 ENDMACRO()
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
38
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
39 SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMake_Modules/")
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
40
67
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
41 SET(USE_HEADERS_FOR_BOOST_TEST OFF)
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
42
34
fda70a362ed5 Remove whitespace.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 31
diff changeset
43 SET(Boost_USE_MULTITHREADED ON)
10
ec87a79770ee Use boost find, to work around problems with QDir.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 8
diff changeset
44 SET(Boost_USE_STATIC_RUNTIME OFF)
67
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
45 IF(USE_HEADERS_FOR_BOOST_TEST)
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
46 SET(Boost_USE_STATIC_LIBS OFF)
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
47 FIND_PACKAGE(Boost COMPONENTS filesystem system)
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
48 ADD_DEFINITIONS( "-DBOOSTTEST_HEADER_INCLUDE" )
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
49 ELSE()
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
50 SET(Boost_USE_STATIC_LIBS ON)
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
51 FIND_PACKAGE(Boost COMPONENTS filesystem system test_exec_monitor)
2f45385195ae Choose between static and dynamic compilation.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 64
diff changeset
52 ENDIF()
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
53 IF (Boost_FOUND)
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
54 INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
55 ADD_DEFINITIONS( "-DHAS_BOOST" )
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
56 ENDIF()
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
57
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
58
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
59 FIND_PACKAGE(Qt4 COMPONENTS QtOpenGL QtXml QtSql REQUIRED)
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
60
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
61 FIND_PACKAGE(Sqlite3 REQUIRED)
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
62
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
63 INCLUDE(${QT_USE_FILE})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
64 ADD_DEFINITIONS(${QT_DEFINITIONS})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
65
30
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
66 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
67
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
68
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
69 SET(CLASS_SOURCES
48
ef429402e03b Compile BitArray.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 46
diff changeset
70 BitArray.cpp
27
95a10553ff90 Optimize BitDecoder, and refactor functions that are not timecritical
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 25
diff changeset
71 BitDecoder.cpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
72 ConfigurationProcessing.cpp
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
73 DataController.cpp
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
74 EditDistance.cpp
28
b2c2c2bf2bbd Refactor Exceptions into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 27
diff changeset
75 Exception/IOException.cpp
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
76 Exception/NoSuchValueException.cpp
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
77 Exception/ValueExistsException.cpp
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
78 Exception/InvalidDataException.cpp
31
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 30
diff changeset
79 Exception/SQLException.cpp
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
80 Exception/PermissionException.cpp
46
877327e9061a N-Tree for decoding.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 39
diff changeset
81 FastBitDecoder.cpp
8
d7b384b4a834 Fix compilation problems.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 5
diff changeset
82 FileDBLink.cpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
83 HuffmanSet.cpp
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
84 HuffmanString.cpp
8
d7b384b4a834 Fix compilation problems.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 5
diff changeset
85 MemoryDBLink.cpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
86 SqliteDBLink.cpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
87 )
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
88
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
89 SET(CLASS_HEADERS
48
ef429402e03b Compile BitArray.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 46
diff changeset
90 BitArray.hpp
ef429402e03b Compile BitArray.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 46
diff changeset
91 BitDecoder.hpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
92 ConfigurationProcessing.hpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
93 DataController.hpp
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
94 EditDistance.hpp
28
b2c2c2bf2bbd Refactor Exceptions into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 27
diff changeset
95 Exception/IOException.hpp
48
ef429402e03b Compile BitArray.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 46
diff changeset
96 FastBitDecoder.hpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
97 FileDBLink.hpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
98 MemoryDBLink.hpp
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
99 RBTree.hpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
100 SqliteDBLink.hpp
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
101 UniqueString.hpp
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
102 )
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
103
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
104 SET(MOC_HEADERS
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
105 DataController.hpp
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
106 )
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
107
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
108 # Returns the moc_xxx.cpp files in the foo_MOC_SRCS variable
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
109 QT4_WRAP_CPP(MOC_SOURCES ${MOC_HEADERS})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
110
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
111 SET(SOURCES
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
112 ${CLASS_HEADERS}
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
113 ${CLASS_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
114 ${MOC_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
115 )
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
116
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
117 SET(TEST_SOURCES
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
118 ${CLASS_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
119 ${MOC_SOURCES}
77
a827f3687c4a Compile fix Linux, wrong capitalization.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 76
diff changeset
120 TestDataBase.cpp
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
121 TestFramework.cpp
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
122 )
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
123
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
124
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
125
68
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
126 ADD_DEFINITIONS("-Wall -Werror")
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
127
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
128 #Quiet clang, ccache combination
70
c2ad34480216 Quieting clang is obviously only needed for clang and breaks other compilers.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 68
diff changeset
129 IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
c2ad34480216 Quieting clang is obviously only needed for clang and breaks other compilers.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 68
diff changeset
130 ADD_DEFINITIONS("-Qunused-arguments")
c2ad34480216 Quieting clang is obviously only needed for clang and breaks other compilers.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 68
diff changeset
131 ENDIF()
68
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
132
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
133 #Quiet some warnings in headers
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
134 ADD_DEFINITIONS("-Wno-self-assign")
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
135 ADD_DEFINITIONS("-Wno-unused-function")
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
136 ADD_DEFINITIONS("-Wno-unused-variable")
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
137
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
138 #Optimization level
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
139 #ADD_DEFINITIONS("-O3")
f3d4aba620cc Fixes for clang.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 67
diff changeset
140 ADD_DEFINITIONS("-g2 -fno-inline")
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
141
71
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
142 ADD_DEFINITIONS(${COVERAGE_FLAGS})
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
143 SET(CMAKE_EXE_LINKER_FLAGS "${COVERAGE_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}")
88f408092b6d Support for code coverage analysis with gcov.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 70
diff changeset
144
30
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
145 ADD_EXECUTABLE(DeDupe Apps/DeDupe.cpp ${SOURCES} ${MOC_SOURCES})
64
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
146 TARGET_LINK_LIBRARIES(
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
147 DeDupe
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
148 ${QT_LIBRARIES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
149 ${SQLITE3_LIBRARIES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
150 ${Boost_LIBRARIES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
151 )
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
152
64
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
153 ADD_EXECUTABLE(
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
154 updateDeDupe
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
155 Apps/updateDeDupe.cpp
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
156 ${SOURCES} ${MOC_SOURCES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
157 )
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
158 TARGET_LINK_LIBRARIES(
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
159 updateDeDupe
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
160 ${QT_LIBRARIES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
161 ${SQLITE3_LIBRARIES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
162 ${Boost_LIBRARIES}
b9515dc35fe4 Make sure no file has greater linewidth than 80.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 48
diff changeset
163 )
5
5e4985407feb Add commandline tool updateDeDupe.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 2
diff changeset
164
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
165 ENABLE_TESTING()
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
166 NEW_TEST(Exception/TestIOException)
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
167 NEW_TEST(Exception/TestInvalidDataException)
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
168 NEW_TEST(Exception/TestSQLException)
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
169 NEW_TEST(Exception/TestNoSuchValueException)
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
170 NEW_TEST(Exception/TestValueExistsException)
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
171 NEW_TEST(Exception/TestPermissionException)
48
ef429402e03b Compile BitArray.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 46
diff changeset
172 NEW_TEST(TestBitArray)
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
173 NEW_TEST(TestSQLGenerator)
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
174 NEW_TEST(TestFileDBLink)
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
175 NEW_TEST(TestBitDecoder)
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
176 NEW_TEST(TestDBCache)
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
177 NEW_TEST(TestEditDistance)
46
877327e9061a N-Tree for decoding.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 39
diff changeset
178 NEW_TEST(TestFastBitDecoder)
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
179 NEW_TEST(TestHuffmanString)
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
180 NEW_TEST(TestRBTree)
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 72
diff changeset
181 NEW_TEST(TestMemoryDBLink)
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
182 NEW_TEST(TestSqliteDBLink)
25
9ce5b5855fe3 Support for profiling, and some new tests.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 16
diff changeset
183
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
184
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
185 #ADD_PRECOMPILED_HEADER(TestEditDistance TestFramework.hpp)
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
186
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
187 ADD_CUSTOM_COMMAND(OUTPUT build_tests COMMAND "${CMAKE_COMMAND}"
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
188 --build ${CMAKE_BINARY_DIR} --target all)
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
189
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
190 ADD_CUSTOM_TARGET(zero_counters_test_with_base
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
191 lcov -q -z -d ${CMAKE_CURRENT_BINARY_DIR}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
192 DEPENDS ${BUILD_ALL_TESTS}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
193 )
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
194
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
195 ADD_CUSTOM_COMMAND(OUTPUT test_with_base COMMAND
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
196 true
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
197 DEPENDS zero_counters_test_with_base ${ALL_TESTS}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
198 COMMENT "All test have run"
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
199 )
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
200
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
201 ADD_CUSTOM_COMMAND(OUTPUT coverage_base_raw.info
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
202 COMMAND lcov --no-external
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
203 --capture --initial
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
204 --directory ${CMAKE_CURRENT_BINARY_DIR}
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
205 --base-directory ${CMAKE_CURRENT_SOURCE_DIR}
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
206 --output-file coverage_base_raw.info
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
207 )
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
208
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
209 ADD_CUSTOM_COMMAND(OUTPUT coverage_test.info
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
210 COMMAND lcov -q --no-external --capture
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
211 --directory ${CMAKE_CURRENT_BINARY_DIR}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
212 --base-directory ${CMAKE_CURRENT_SOURCE_DIR}
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
213 --output-file
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
214 coverage_test.info
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
215 DEPENDS test_with_base
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
216 )
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
217
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
218 ADD_CUSTOM_COMMAND(OUTPUT coverage.preprocessed2
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
219 COMMAND lcov -q -r
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
220 coverage_test.info 'moc_*'
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
221 --output-file coverage.preprocessed2
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
222 DEPENDS coverage_test.info
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
223 COMMENT "Removing \"moc_\"-files"
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
224 )
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
225
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
226
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
227 ADD_CUSTOM_COMMAND(OUTPUT coverage.preprocessed
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
228 COMMAND lcov -q -r
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
229 coverage.preprocessed2 'Test*'
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
230 --output-file coverage.preprocessed
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
231 DEPENDS
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
232 coverage.preprocessed2
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
233 COMMENT "Removing \"Test\"-files"
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
234 )
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
235
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
236
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
237 ADD_CUSTOM_TARGET(coverage_presentation genhtml -q
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
238 ${CMAKE_CURRENT_BINARY_DIR}/coverage.preprocessed
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
239 --output-directory
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
240 ${CMAKE_CURRENT_BINARY_DIR}/coverage_presentation
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
241 DEPENDS
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
242 ${CMAKE_CURRENT_BINARY_DIR}/coverage.preprocessed
72
b4185273c14a Add code coverage report functionality.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 71
diff changeset
243 )
76
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
244
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
245 ADD_CUSTOM_TARGET(coverage_base
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
246 DEPENDS
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
247 ${CMAKE_CURRENT_BINARY_DIR}/coverage_base.info
8136057988bc Fixes to automatic report generating system.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
248 )