annotate CMakeLists.txt @ 46:877327e9061a

N-Tree for decoding.
author Tom Fredrik Blenning Klaussen <bfg@blenning.no>
date Mon, 10 Sep 2012 21:31:10 +0200
parents f23fa42238dc
children ef429402e03b
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
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
6 MACRO(NEW_TEST file)
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
7 ADD_EXECUTABLE(${file} ${file}.cpp ${TEST_SOURCES})
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
8 ADD_TEST(${file} ${file})
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
9 TARGET_LINK_LIBRARIES(${file} ${QT_LIBRARIES} ${Boost_LIBRARIES})
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
10 ENDMACRO()
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
11
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
12 SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMake_Modules/")
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
13
10
ec87a79770ee Use boost find, to work around problems with QDir.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 8
diff changeset
14 SET(Boost_USE_STATIC_LIBS OFF)
34
fda70a362ed5 Remove whitespace.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 31
diff changeset
15 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
16 SET(Boost_USE_STATIC_RUNTIME OFF)
ec87a79770ee Use boost find, to work around problems with QDir.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 8
diff changeset
17 FIND_PACKAGE(Boost COMPONENTS filesystem system)
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
18 IF (Boost_FOUND)
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
19 INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
20 ADD_DEFINITIONS( "-DHAS_BOOST" )
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
21 ENDIF()
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
22
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
23
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
24 FIND_PACKAGE(Qt4 COMPONENTS QtOpenGL QtXml QtSql REQUIRED)
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
25
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
26 FIND_PACKAGE(Sqlite3 REQUIRED)
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 0
diff changeset
27
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
28 INCLUDE(${QT_USE_FILE})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
29 ADD_DEFINITIONS(${QT_DEFINITIONS})
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
30
30
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
31 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
32
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
33
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
34 SET(CLASS_SOURCES
27
95a10553ff90 Optimize BitDecoder, and refactor functions that are not timecritical
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 25
diff changeset
35 BitDecoder.cpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
36 ConfigurationProcessing.cpp
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
37 DataController.cpp
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
38 EditDistance.cpp
28
b2c2c2bf2bbd Refactor Exceptions into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 27
diff changeset
39 Exception/IOException.cpp
31
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 30
diff changeset
40 Exception/SQLException.cpp
46
877327e9061a N-Tree for decoding.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 39
diff changeset
41 FastBitDecoder.cpp
8
d7b384b4a834 Fix compilation problems.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 5
diff changeset
42 FileDBLink.cpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
43 HuffmanSet.cpp
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
44 HuffmanString.cpp
8
d7b384b4a834 Fix compilation problems.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 5
diff changeset
45 MemoryDBLink.cpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
46 SqliteDBLink.cpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
47 UniqueString.cpp
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
48 )
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
49
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
50 SET(CLASS_HEADERS
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
51 ConfigurationProcessing.hpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
52 DataController.hpp
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
53 EditDistance.hpp
28
b2c2c2bf2bbd Refactor Exceptions into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 27
diff changeset
54 Exception/IOException.hpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
55 FileDBLink.hpp
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
56 MemoryDBLink.hpp
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
57 RBTree.hpp
16
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
58 SqliteDBLink.hpp
06166d6c083b Add configuration processing.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 10
diff changeset
59 UniqueString.hpp
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
60 )
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
61
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
62 SET(MOC_HEADERS
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
63 DataController.hpp
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
64 )
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
65
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
66 # 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
67 QT4_WRAP_CPP(MOC_SOURCES ${MOC_HEADERS})
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(SOURCES
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
70 ${CLASS_HEADERS}
2
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
71 ${CLASS_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
72 ${MOC_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
73 )
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
74
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
75 SET(TEST_SOURCES
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
76 ${CLASS_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
77 ${MOC_SOURCES}
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
78 TestFramework.cpp
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
79 )
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
80
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
81
2833b7f8884a Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 1
diff changeset
82
27
95a10553ff90 Optimize BitDecoder, and refactor functions that are not timecritical
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 25
diff changeset
83 SET(CMAKE_CXX_FLAGS "-O3 -Wall")
46
877327e9061a N-Tree for decoding.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 39
diff changeset
84 #SET(CMAKE_CXX_FLAGS "-g2 -Wall -fno-inline")
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
85
30
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
86 ADD_EXECUTABLE(DeDupe Apps/DeDupe.cpp ${SOURCES} ${MOC_SOURCES})
10
ec87a79770ee Use boost find, to work around problems with QDir.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 8
diff changeset
87 TARGET_LINK_LIBRARIES(DeDupe ${QT_LIBRARIES} ${SQLITE3_LIBRARIES} ${Boost_LIBRARIES})
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
88
30
1072257d2bab Refactor Apps/Binaries into a separate directory.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 29
diff changeset
89 ADD_EXECUTABLE(updateDeDupe Apps/updateDeDupe.cpp ${SOURCES} ${MOC_SOURCES})
10
ec87a79770ee Use boost find, to work around problems with QDir.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 8
diff changeset
90 TARGET_LINK_LIBRARIES(updateDeDupe ${QT_LIBRARIES} ${SQLITE3_LIBRARIES} ${Boost_LIBRARIES})
5
5e4985407feb Add commandline tool updateDeDupe.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 2
diff changeset
91
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
92 ENABLE_TESTING()
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
93 NEW_TEST(TestBitDecoder)
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
94 NEW_TEST(TestDBCache)
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
95 NEW_TEST(TestEditDistance)
46
877327e9061a N-Tree for decoding.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 39
diff changeset
96 NEW_TEST(TestFastBitDecoder)
39
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
97 NEW_TEST(TestHuffmanString)
f23fa42238dc Order inputs in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 35
diff changeset
98 NEW_TEST(TestRBTree)
35
769f43c4c5d0 Introduced NEW_TEST function in CMakeLists.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 34
diff changeset
99 NEW_TEST(TestSqliteDBLink)
25
9ce5b5855fe3 Support for profiling, and some new tests.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 16
diff changeset
100
0
a3834af36579 Working with memory backend.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
101 #ADD_PRECOMPILED_HEADER(TestEditDistance TestFramework.hpp)