Mercurial > malikania
annotate cmake/MalikaniaOptions.cmake @ 165:3e3040d085b5
Misc: reset to a new target
Malikania is no longer a MMORPG engine but only a game. Creating an engine is
too feature specific and hard to provide customizations without complex code.
We also don't ship any Javascript bindings anymore and will use Qt 5 and QML for
client side to avoid reinventing a UI toolkit.
The server side is less impacted and will only take modifications in the
database code which now has explicit PostgreSQL runtime dependency instead of
writing a complex generic database backend.
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 19 Jun 2018 21:01:01 +0200 |
parents | 4b292c20124c |
children | 3107ce017c3a |
rev | line source |
---|---|
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
1 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
2 # CMakeLists.txt -- CMake build system for malikania |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
3 # |
158
4b292c20124c
Misc: update copyrights
David Demelier <markand@malikania.fr>
parents:
111
diff
changeset
|
4 # Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> |
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
5 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
6 # Permission to use, copy, modify, and/or distribute this software for any |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
7 # purpose with or without fee is hereby granted, provided that the above |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
8 # copyright notice and this permission notice appear in all copies. |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
9 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
17 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
18 |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
19 # |
54
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
20 # Options for development. |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
21 # ------------------------------------------------------------------- |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
22 # |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
23 |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
24 option(WITH_VERA "Enable vera++ analyzer" On) |
69
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
25 option(WITH_TESTS "Enable unit tests" On) |
54
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
26 |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
27 find_program(VERA_EXECUTABLE vera++) |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
28 |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
29 if (VERA_EXECUTABLE) |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
30 if (WITH_VERA) |
96
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
31 execute_process( |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
32 COMMAND ${VERA_EXECUTABLE} --version |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
33 OUTPUT_VARIABLE VERA_VERSION |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
34 ) |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
35 |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
36 if (${VERA_VERSION} VERSION_LESS "1.3.0") |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
37 malikania_setg(WITH_VERA Off) |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
38 malikania_setg(WITH_VERA_MSG "No (1.3.0 or greater required)") |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
39 else () |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
40 malikania_setg(WITH_VERA_MSG "Yes") |
55300686bd78
CMake: check that vera++ is at least 1.3.0, closes #656
David Demelier <markand@malikania.fr>
parents:
79
diff
changeset
|
41 endif () |
54
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
42 else () |
79
8b41e9a2e095
CMake: fix vera conditional
Alexis Dörr <nanahara@malikania.fr>
parents:
76
diff
changeset
|
43 malikania_setg(WITH_VERA Off) |
8b41e9a2e095
CMake: fix vera conditional
Alexis Dörr <nanahara@malikania.fr>
parents:
76
diff
changeset
|
44 malikania_setg(WITH_VERA_MSG "No (disabled by user)") |
54
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
45 endif () |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
46 else () |
79
8b41e9a2e095
CMake: fix vera conditional
Alexis Dörr <nanahara@malikania.fr>
parents:
76
diff
changeset
|
47 malikania_setg(WITH_VERA Off) |
8b41e9a2e095
CMake: fix vera conditional
Alexis Dörr <nanahara@malikania.fr>
parents:
76
diff
changeset
|
48 malikania_setg(WITH_VERA_MSG "No (vera++ not found)") |
54
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
49 endif () |
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
50 |
69
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
51 if (NOT WITH_TESTS) |
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
52 malikania_setg(WITH_TESTS_MSG "No (disabled by user)") |
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
53 else () |
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
54 malikania_setg(WITH_TESTS_MSG "Yes") |
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
55 endif () |
fce7e41875db
CMake: add WITH_TESTS option
David Demelier <markand@malikania.fr>
parents:
54
diff
changeset
|
56 |
54
0edaba9986ba
CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
50
diff
changeset
|
57 # |
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
58 # Options for unit tests |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
59 # ------------------------------------------------------------------- |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
60 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
61 |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
62 set(WITH_TEST_PGSQL_HOST "localhost" |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
63 CACHE STRING "Hostname for PostgreSQL driver") |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
64 set(WITH_TEST_PGSQL_PORT "5432" |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
65 CACHE STRING "Port for PostgreSQL driver") |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
66 set(WITH_TEST_PGSQL_DATABASE "malikaniadb" |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
67 CACHE STRING "Database for PostgreSQL driver") |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
68 set(WITH_TEST_PGSQL_USER "malikania" |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
69 CACHE STRING "Username for PostgreSQL driver") |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
70 |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
71 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
72 # Targets to build |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
73 # ------------------------------------------------------------------- |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
74 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
75 # The following options are available: |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
76 # WITH_LIBCLIENT - Build the client library. |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
77 # WITH_LIBSERVER - Build the server library. |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
78 # |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
79 |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
80 option(WITH_LIBCLIENT "Build libclient" On) |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
81 option(WITH_LIBSERVER "Build libserver" On) |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
82 |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
83 configure_file( |
165
3e3040d085b5
Misc: reset to a new target
David Demelier <markand@malikania.fr>
parents:
158
diff
changeset
|
84 ${malikania_SOURCE_DIR}/cmake/internal/sysconfig-tests.hpp.in |
3e3040d085b5
Misc: reset to a new target
David Demelier <markand@malikania.fr>
parents:
158
diff
changeset
|
85 ${malikania_BINARY_DIR}/sysconfig-tests.hpp |
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
86 ) |