]>
Commit | Line | Data |
---|---|---|
db9ecf05 | 1 | # SPDX-License-Identifier: LGPL-2.1-or-later |
3a726fcd | 2 | |
f1b98127 ZJS |
3 | sources = files( |
4 | 'journald-audit.c', | |
87a13dab | 5 | 'journald-client.c', |
f1b98127 | 6 | 'journald-console.c', |
f1b98127 | 7 | 'journald-context.c', |
f1b98127 | 8 | 'journald-kmsg.c', |
f1b98127 | 9 | 'journald-native.c', |
f1b98127 | 10 | 'journald-rate-limit.c', |
f1b98127 | 11 | 'journald-server.c', |
f1b98127 | 12 | 'journald-stream.c', |
f1b98127 | 13 | 'journald-syslog.c', |
f1b98127 | 14 | 'journald-wall.c', |
f1b98127 | 15 | 'managed-journal-file.c', |
2f492a73 | 16 | ) |
5c23128d | 17 | |
52964293 | 18 | sources += custom_target( |
37efbbd8 ZJS |
19 | 'journald-gperf.c', |
20 | input : 'journald-gperf.gperf', | |
21 | output : 'journald-gperf.c', | |
22 | command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@']) | |
5c23128d | 23 | |
52964293 YW |
24 | libjournal_core = static_library( |
25 | 'journal-core', | |
26 | sources, | |
27 | include_directories : includes, | |
92148283 JJ |
28 | dependencies: [threads, |
29 | userspace], | |
03f7ddf0 | 30 | build_by_default : false) |
52964293 | 31 | |
8d40961c YW |
32 | journal_includes = [includes, include_directories('.')] |
33 | ||
dd1f738e YW |
34 | if get_option('link-journalctl-shared') |
35 | journalctl_link_with = [libshared] | |
36 | else | |
37 | journalctl_link_with = [ | |
38 | libbasic_gcrypt, | |
39 | libshared_static, | |
40 | libsystemd_static, | |
41 | ] | |
42 | endif | |
5c23128d | 43 | |
130c87b1 YW |
44 | journal_test_template = test_template + { |
45 | 'link_with' : [ | |
46 | libjournal_core, | |
47 | libshared, | |
48 | ], | |
49 | } | |
50 | ||
cbc55c4c YW |
51 | journal_fuzz_template = fuzz_template + { |
52 | 'link_with' : [ | |
53 | libjournal_core, | |
54 | libshared, | |
55 | ], | |
56 | 'dependencies' : libselinux, | |
57 | } | |
58 | ||
dd1f738e YW |
59 | executables += [ |
60 | libexec_template + { | |
61 | 'name' : 'systemd-journald', | |
62 | 'sources' : files('journald.c'), | |
63 | 'link_with' : [ | |
64 | libjournal_core, | |
65 | libshared, | |
66 | ], | |
67 | 'dependencies' : [ | |
68 | liblz4, | |
69 | libselinux, | |
70 | libxz, | |
71 | libzstd, | |
72 | threads, | |
73 | ], | |
74 | }, | |
5ae58e8f OJ |
75 | libexec_template + { |
76 | 'name' : 'systemd-bsod', | |
77 | 'conditions' : ['HAVE_QRENCODE'], | |
78 | 'sources' : files('bsod.c'), | |
79 | 'link_with' : libshared, | |
80 | 'dependencies' : libqrencode, | |
81 | }, | |
dd1f738e YW |
82 | executable_template + { |
83 | 'name' : 'systemd-cat', | |
84 | 'public' : true, | |
85 | 'sources' : files('cat.c'), | |
86 | 'link_with' : [ | |
87 | libjournal_core, | |
88 | libshared, | |
89 | ], | |
90 | 'dependencies' : threads, | |
91 | }, | |
92 | executable_template + { | |
93 | 'name' : 'journalctl', | |
94 | 'public' : true, | |
95 | 'sources' : files('journalctl.c'), | |
96 | 'link_with' : journalctl_link_with, | |
97 | 'dependencies' : [ | |
98 | libdl, | |
99 | liblz4, | |
100 | libxz, | |
101 | libzstd, | |
102 | threads, | |
103 | ], | |
104 | }, | |
130c87b1 YW |
105 | journal_test_template + { |
106 | 'sources' : files('test-journal-append.c'), | |
107 | 'type' : 'manual', | |
108 | }, | |
109 | journal_test_template + { | |
110 | 'sources' : files('test-journal-config.c'), | |
111 | 'dependencies' : [ | |
112 | liblz4, | |
113 | libselinux, | |
114 | libxz, | |
115 | ], | |
116 | }, | |
117 | journal_test_template + { | |
118 | 'sources' : files('test-journal-flush.c'), | |
119 | }, | |
120 | journal_test_template + { | |
121 | 'sources' : files('test-journal-interleaving.c'), | |
122 | }, | |
123 | journal_test_template + { | |
124 | 'sources' : files('test-journal-stream.c'), | |
125 | }, | |
126 | journal_test_template + { | |
127 | 'sources' : files('test-journal-syslog.c'), | |
128 | 'dependencies' : [ | |
129 | liblz4, | |
130 | libselinux, | |
131 | libxz, | |
132 | threads, | |
133 | ], | |
134 | }, | |
135 | journal_test_template + { | |
136 | 'sources' : files('test-journal-verify.c'), | |
137 | 'timeout' : 90, | |
138 | }, | |
139 | journal_test_template + { | |
140 | 'sources' : files('test-journal.c'), | |
141 | }, | |
cbc55c4c | 142 | journal_fuzz_template + { |
2ed35b2f JJ |
143 | 'sources' : files( |
144 | 'fuzz-journald-audit.c', | |
145 | 'fuzz-journald.c', | |
146 | ), | |
2ed35b2f | 147 | }, |
cbc55c4c | 148 | journal_fuzz_template + { |
2ed35b2f JJ |
149 | 'sources' : files( |
150 | 'fuzz-journald-kmsg.c', | |
151 | 'fuzz-journald.c', | |
152 | ), | |
2ed35b2f | 153 | }, |
cbc55c4c | 154 | journal_fuzz_template + { |
2ed35b2f JJ |
155 | 'sources' : files( |
156 | 'fuzz-journald-native.c', | |
157 | 'fuzz-journald.c', | |
158 | ), | |
2ed35b2f | 159 | }, |
cbc55c4c | 160 | journal_fuzz_template + { |
2ed35b2f JJ |
161 | 'sources' : files( |
162 | 'fuzz-journald-native-fd.c', | |
163 | 'fuzz-journald.c', | |
164 | ), | |
2ed35b2f | 165 | }, |
cbc55c4c | 166 | journal_fuzz_template + { |
2ed35b2f JJ |
167 | 'sources' : files( |
168 | 'fuzz-journald-stream.c', | |
169 | 'fuzz-journald.c', | |
170 | ), | |
2ed35b2f | 171 | }, |
cbc55c4c | 172 | journal_fuzz_template + { |
2ed35b2f JJ |
173 | 'sources' : files( |
174 | 'fuzz-journald-syslog.c', | |
175 | 'fuzz-journald.c', | |
176 | ), | |
2ed35b2f | 177 | }, |
e025c9df | 178 | ] |
cbc55c4c YW |
179 | |
180 | if install_sysconfdir_samples | |
181 | install_data('journald.conf', | |
182 | install_dir : pkgsysconfdir) | |
183 | endif | |
184 | ||
185 | if get_option('create-log-dirs') | |
9289e093 YW |
186 | install_emptydir('/var/log/journal', |
187 | install_mode : [ 'rwxr-xr-x', 'root', 'root' ]) | |
cbc55c4c YW |
188 | if get_option('adm-group') |
189 | meson.add_install_script( | |
190 | 'sh', '-c', | |
191 | 'setfacl -nm g:adm:rx,d:g:adm:rx $DESTDIR/var/log/journal || :') | |
192 | endif | |
193 | if get_option('wheel-group') | |
194 | meson.add_install_script( | |
195 | 'sh', '-c', | |
196 | 'setfacl -nm g:wheel:rx,d:g:wheel:rx $DESTDIR/var/log/journal || :') | |
197 | endif | |
198 | endif |