annotate CMakeLists.txt @ 618:1ae8106369e5

Options: initial reimport, closes #705
author David Demelier <markand@malikania.fr>
date Tue, 26 Sep 2017 09:50:02 +0200
parents 266f32919d0a
children ca5912ad2909
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
219
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # CMakeLists.txt -- code building for common code
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 #
617
266f32919d0a Misc: update copyright headers, closes #686
David Demelier <markand@malikania.fr>
parents: 616
diff changeset
4 # Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
219
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 #
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 #
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 #
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
516
cc50a80dc163 CMake: change code_define_module and rename the CMake file
David Demelier <markand@malikania.fr>
parents: 513
diff changeset
19 cmake_minimum_required(VERSION 3.5)
219
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 project(code)
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
21
547
ecf5fb9319da Fs: switch to spaces, add FS_EXPORT
David Demelier <markand@malikania.fr>
parents: 538
diff changeset
22 set(CMAKE_CXX_STANDARD 14)
ecf5fb9319da Fs: switch to spaces, add FS_EXPORT
David Demelier <markand@malikania.fr>
parents: 538
diff changeset
23 set(CMAKE_CXX_STANDARD_REQUIRED On)
ecf5fb9319da Fs: switch to spaces, add FS_EXPORT
David Demelier <markand@malikania.fr>
parents: 538
diff changeset
24
573
db2934ac95c7 Net: fix some warnings
David Demelier <markand@malikania.fr>
parents: 568
diff changeset
25 if (CMAKE_C_COMPILER_ID MATCHES "GNU" OR CMAKE_C_COMPILER_ID MATCHES "Clang")
db2934ac95c7 Net: fix some warnings
David Demelier <markand@malikania.fr>
parents: 568
diff changeset
26 set(CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic ${CMAKE_CXX_FLAGS}")
db2934ac95c7 Net: fix some warnings
David Demelier <markand@malikania.fr>
parents: 568
diff changeset
27 endif ()
db2934ac95c7 Net: fix some warnings
David Demelier <markand@malikania.fr>
parents: 568
diff changeset
28
516
cc50a80dc163 CMake: change code_define_module and rename the CMake file
David Demelier <markand@malikania.fr>
parents: 513
diff changeset
29 include(${code_SOURCE_DIR}/cmake/CodeDefineModule.cmake)
334
0b576ee64d45 * Create brand new hierarchy
David Demelier <markand@malikania.fr>
parents: 325
diff changeset
30
219
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 enable_testing()
8fc177bbc4a6 Update some code
David Demelier <markand@malikania.fr>
parents:
diff changeset
32
516
cc50a80dc163 CMake: change code_define_module and rename the CMake file
David Demelier <markand@malikania.fr>
parents: 513
diff changeset
33 # Doxygen target.
361
412c3e26bb40 - Add doxygen
David Demelier <markand@malikania.fr>
parents: 360
diff changeset
34 find_package(Doxygen)
612
18ec7f4fc3de Js: new style, closes #685
David Demelier <markand@malikania.fr>
parents: 606
diff changeset
35 find_package(Boost REQUIRED COMPONENTS unit_test_framework)
361
412c3e26bb40 - Add doxygen
David Demelier <markand@malikania.fr>
parents: 360
diff changeset
36
412c3e26bb40 - Add doxygen
David Demelier <markand@malikania.fr>
parents: 360
diff changeset
37 if (DOXYGEN_FOUND)
548
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
38 configure_file(
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
39 ${CMAKE_SOURCE_DIR}/cmake/Doxyfile.in
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
40 ${CMAKE_BINARY_DIR}/Doxyfile
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
41 )
361
412c3e26bb40 - Add doxygen
David Demelier <markand@malikania.fr>
parents: 360
diff changeset
42
548
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
43 add_custom_target(
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
44 doxygen ALL
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
45 COMMENT "Generating doxygen documentation"
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
46 COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
47 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
48 VERBATIM
f48bb09bccc7 Misc: huge cleanup, switch to spaces
David Demelier <markand@malikania.fr>
parents: 547
diff changeset
49 )
361
412c3e26bb40 - Add doxygen
David Demelier <markand@malikania.fr>
parents: 360
diff changeset
50 endif ()
412c3e26bb40 - Add doxygen
David Demelier <markand@malikania.fr>
parents: 360
diff changeset
51
616
47f003c55e1e Executable: dedicate new module directory, closes #684
David Demelier <markand@malikania.fr>
parents: 615
diff changeset
52 add_subdirectory(modules/executable)
615
e8661a550a12 Join: dedicate new module directory, #684
David Demelier <markand@malikania.fr>
parents: 612
diff changeset
53 add_subdirectory(modules/join)
522
adc2dccc3ee6 Js: resurrection
David Demelier <markand@malikania.fr>
parents: 521
diff changeset
54 add_subdirectory(modules/js)
618
1ae8106369e5 Options: initial reimport, closes #705
David Demelier <markand@malikania.fr>
parents: 617
diff changeset
55 add_subdirectory(modules/options)