annotate cmake/function/MalikaniaVeraCheck.cmake @ 182:3107ce017c3a

Misc: switch back to SDL Qt Quick and QML was an exciting experiment but it's definitely not enough flexible and easy to use for game development. Using SDL2 will let us focusing on our own drawing functions without any kind of overhead. While here, start massive cleanup.
author David Demelier <markand@malikania.fr>
date Fri, 19 Oct 2018 20:18:19 +0200
parents 4b292c20124c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
54
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # MalikaniaVeraCheck.cmake -- CMake build system for malikania
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 #
158
4b292c20124c Misc: update copyrights
David Demelier <markand@malikania.fr>
parents: 110
diff changeset
4 # Copyright (c) 2013-2018 David Demelier <markand@malikania.fr>
54
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 #
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 #
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 #
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
61
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
19 #
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
20 # malikania_vera_check
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
21 # --------------------
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
22 #
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
23 # malikania_vera_check(target sources)
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
24 #
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
25 # Check the style source code using vera++.
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
26 #
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
27 # No-op if WITH_VERA is Off.
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
28 #
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
29 # This macro add a post-build command to call vera++ program on the specified
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
30 # sources file for the given target.
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
31 #
e7bf0728eff2 CMake: add documentation about MalikaniaVeraCheck.cmake
David Demelier <markand@malikania.fr>
parents: 54
diff changeset
32
54
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 function(malikania_vera_check target sources)
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 if (WITH_VERA)
90
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
35 set(valid ".cpp;.c;.hpp;.h")
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
36
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
37 # Cleanup non relevant files.
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
38 foreach (s ${sources})
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
39 get_filename_component(ext ${s} EXT)
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
40
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
41 foreach (e ${valid})
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
42 if (${ext} STREQUAL ${e})
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
43 list(APPEND newsources ${s})
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
44 endif ()
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
45 endforeach ()
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
46 endforeach ()
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
47
54
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
48 add_custom_command(
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
49 TARGET ${target}
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
50 COMMAND
90
58b43650d8f0 CMake: vera++ must check source files only, closes #633
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
51 ${VERA_EXECUTABLE} -w --root ${CMAKE_SOURCE_DIR}/vera ${newsources}
54
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
52 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
53 VERBATIM
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
54 )
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
55 endif ()
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
56 endfunction()