annotate CMakeLists.txt @ 1:c2e82909c9b5

daemon: basic skeleton Drop all but file read/write and net access privs. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
author Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
date Thu, 27 Jul 2017 01:27:55 +0300
parents 3ae73be13d33
children a36ce212c6fc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
1 #
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
2 # Copyright (c) 2017 Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
3 #
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
4 # Permission is hereby granted, free of charge, to any person obtaining a copy
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
5 # of this software and associated documentation files (the "Software"), to deal
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
6 # in the Software without restriction, including without limitation the rights
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
7 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
8 # copies of the Software, and to permit persons to whom the Software is
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
9 # furnished to do so, subject to the following conditions:
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
10 #
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
11 # The above copyright notice and this permission notice shall be included in
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
12 # all copies or substantial portions of the Software.
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
13 #
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
17 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
19 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
20 # SOFTWARE.
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
21 #
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
22
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
23 cmake_minimum_required(VERSION 2.8.12.2)
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
24
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
25 enable_testing()
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
26
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
27 include(config.cmake)
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
28
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
29 add_definitions(
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
30 -D__EXTENSIONS__
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
31 -D_REENTRANT
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
32 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
33
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
34 add_compile_options(
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
35 -Wall
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
36 -O2
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
37 -g
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
38 -std=gnu99
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
39 -fno-omit-frame-pointer
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
40 $<$<C_COMPILER_ID:gcc>:-fno-inline-small-functions>
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
41 $<$<C_COMPILER_ID:gcc>:-fno-inline-functions-called-once>
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
42 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
43
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
44 include_directories(
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
45 ${JEFFPC_INCLUDE_DIR}
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
46 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
47
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
48 add_custom_target(revisiontag ALL)
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
49
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
50 add_custom_command(TARGET revisiontag
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
51 COMMAND ${CMAKE_COMMAND}
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
52 -DSOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
53 -DBINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
54 -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/hg.cmake
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
55 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
56
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
57 add_executable(galleryd
1
c2e82909c9b5 daemon: basic skeleton
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents: 0
diff changeset
58 daemon.c
0
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
59 version.c
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
60 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
61
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
62 target_link_libraries(galleryd
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
63 ${JEFFPC_LIBRARY}
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
64 ${JEFFPC_COMM_LIBRARY}
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
65 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
66
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
67 add_dependencies(galleryd revisiontag)
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
68
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
69 function(simple_c_test type section bin data)
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
70 add_test(NAME "${type}:${section}:${data}"
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
71 COMMAND "${CMAKE_BINARY_DIR}/test_${bin}"
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
72 "${CMAKE_CURRENT_SOURCE_DIR}/${data}"
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
73 )
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
74 endfunction()
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
75
3ae73be13d33 Initial commit
Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
parents:
diff changeset
76 #add_subdirectory(test)