Mercurial > code
annotate CMakeLists.txt @ 249:3b4ae8feca1c
Switch to GoogleTest finished #285
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 01 Oct 2014 14:38:25 +0200 |
parents | a9883eeb9757 |
children | 0b7566e27eaa |
rev | line source |
---|---|
219 | 1 # |
2 # CMakeLists.txt -- code building for common code | |
3 # | |
236 | 4 # Copyright (c) 2013, 2014 David Demelier <markand@malikania.fr> |
219 | 5 # |
6 # Permission to use, copy, modify, and/or distribute this software for any | |
7 # purpose with or without fee is hereby granted, provided that the above | |
8 # copyright notice and this permission notice appear in all copies. | |
9 # | |
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
17 # | |
18 | |
19 # | |
20 # This CMakeLists build system is primarily used for testing all | |
21 # modules. | |
22 # | |
23 cmake_minimum_required(VERSION 2.8.11) | |
24 project(code) | |
25 | |
26 set(CMAKE_MODULE_PATH ${code_SOURCE_DIR}/cmake) | |
27 | |
28 enable_testing() | |
29 | |
30 include_directories( | |
31 ${code_SOURCE_DIR}/C++ | |
32 ) | |
33 | |
236 | 34 # GoogleTest library |
35 add_subdirectory(extern) | |
36 | |
219 | 37 function(define_test name sources) |
236 | 38 # The executable |
219 | 39 add_executable( |
40 ${name} | |
41 ${sources} | |
42 ) | |
43 | |
249
3b4ae8feca1c
Switch to GoogleTest finished #285
David Demelier <markand@malikania.fr>
parents:
242
diff
changeset
|
44 target_link_libraries(${name} gtest) |
219 | 45 add_test(${name}-test ${name}) |
46 endfunction() | |
47 | |
242 | 48 option(WITH_BASE64 "Enable base64 tests" On) |
219 | 49 option(WITH_CONVERTER "Enable converter tests" On) |
50 option(WITH_DIRECTORY "Enable directory tests" On) | |
51 option(WITH_DRIVER "Enable SQL drivers tests" On) | |
52 option(WITH_DYNLIB "Enable DynLib tests" On) | |
53 option(WITH_HASH "Enable hash functions tests" On) | |
54 option(WITH_LUAE "Enable Luae tests" On) | |
236 | 55 option(WITH_OPTIONPARSER "Enable option parser tests" On) |
219 | 56 option(WITH_PACK "Enable pack functions" On) |
57 option(WITH_PARSER "Enable parser tests" On) | |
58 option(WITH_SOCKET "Enable sockets tests" On) | |
59 option(WITH_UTF8 "Enable Utf8 functions tests" On) | |
60 option(WITH_XMLPARSER "Enable XML tests" On) | |
249
3b4ae8feca1c
Switch to GoogleTest finished #285
David Demelier <markand@malikania.fr>
parents:
242
diff
changeset
|
61 |
3b4ae8feca1c
Switch to GoogleTest finished #285
David Demelier <markand@malikania.fr>
parents:
242
diff
changeset
|
62 if (UNIX) |
3b4ae8feca1c
Switch to GoogleTest finished #285
David Demelier <markand@malikania.fr>
parents:
242
diff
changeset
|
63 option(WITH_XDG "Enable XDG standard directories tests" On) |
3b4ae8feca1c
Switch to GoogleTest finished #285
David Demelier <markand@malikania.fr>
parents:
242
diff
changeset
|
64 endif () |
219 | 65 |
242 | 66 if (WITH_BASE64) |
67 add_subdirectory(C++/Tests/Base64) | |
68 endif () | |
69 | |
222
5a99711d52f9
Directory: add unit tests
David Demelier <markand@malikania.fr>
parents:
221
diff
changeset
|
70 if (WITH_DIRECTORY) |
5a99711d52f9
Directory: add unit tests
David Demelier <markand@malikania.fr>
parents:
221
diff
changeset
|
71 add_subdirectory(C++/Tests/Directory) |
5a99711d52f9
Directory: add unit tests
David Demelier <markand@malikania.fr>
parents:
221
diff
changeset
|
72 endif () |
5a99711d52f9
Directory: add unit tests
David Demelier <markand@malikania.fr>
parents:
221
diff
changeset
|
73 |
219 | 74 if (WITH_DYNLIB) |
75 add_subdirectory(C++/Tests/DynLib) | |
76 endif () | |
77 | |
221 | 78 if (WITH_HASH) |
79 add_subdirectory(C++/Tests/Hash) | |
80 endif () | |
223 | 81 |
225
e01ee0c72c43
Luae: begin refactoring of Luae
David Demelier <markand@malikania.fr>
parents:
224
diff
changeset
|
82 if (WITH_LUAE) |
e01ee0c72c43
Luae: begin refactoring of Luae
David Demelier <markand@malikania.fr>
parents:
224
diff
changeset
|
83 add_subdirectory(C++/Tests/Luae) |
e01ee0c72c43
Luae: begin refactoring of Luae
David Demelier <markand@malikania.fr>
parents:
224
diff
changeset
|
84 endif () |
e01ee0c72c43
Luae: begin refactoring of Luae
David Demelier <markand@malikania.fr>
parents:
224
diff
changeset
|
85 |
236 | 86 if (WITH_OPTIONPARSER) |
87 add_subdirectory(C++/Tests/OptionParser) | |
88 endif () | |
89 | |
223 | 90 if (WITH_PACK) |
91 add_subdirectory(C++/Tests/Pack) | |
92 endif () | |
224
ca69910b1407
Parser: add tests (and fix #270)
David Demelier <markand@malikania.fr>
parents:
223
diff
changeset
|
93 |
ca69910b1407
Parser: add tests (and fix #270)
David Demelier <markand@malikania.fr>
parents:
223
diff
changeset
|
94 if (WITH_PARSER) |
ca69910b1407
Parser: add tests (and fix #270)
David Demelier <markand@malikania.fr>
parents:
223
diff
changeset
|
95 add_subdirectory(C++/Tests/Parser) |
236 | 96 endif () |
240
f6d9fdb5eeeb
Xdg: don't use bad directories, add tests
David Demelier <markand@malikania.fr>
parents:
236
diff
changeset
|
97 |
249
3b4ae8feca1c
Switch to GoogleTest finished #285
David Demelier <markand@malikania.fr>
parents:
242
diff
changeset
|
98 if (WITH_XDG AND UNIX) |
240
f6d9fdb5eeeb
Xdg: don't use bad directories, add tests
David Demelier <markand@malikania.fr>
parents:
236
diff
changeset
|
99 add_subdirectory(C++/Tests/Xdg) |
f6d9fdb5eeeb
Xdg: don't use bad directories, add tests
David Demelier <markand@malikania.fr>
parents:
236
diff
changeset
|
100 endif () |