chiark / gitweb /
e0ba820369428663b8be5c6fe70d5f61a4b0d29a
[elogind.git] / src / login / meson.build
1 # SPDX-License-Identifier: LGPL-2.1+
2 #
3 # Copyright 2017 Zbigniew JÄ™drzejewski-Szmek
4 #if 0 /// rename to elogind
5
6 # systemd_logind_sources = files('''
7 #         logind.c
8 #         logind.h
9 # '''.split())
10 #else
11 elogind_sources = files('''
12         elogind.c
13         elogind.h
14         logind.c
15         logind.h
16 '''.split())
17 #endif // 0
18
19 logind_gperf_c = custom_target(
20         'logind_gperf.c',
21         input : 'logind-gperf.gperf',
22         output : 'logind-gperf.c',
23         command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
24
25 #if 0 /// rename to elogind
26 #else
27 elogind_sources += [logind_gperf_c]
28 #endif // 0
29 liblogind_core_sources = files('''
30         logind-core.c
31         logind-device.c
32         logind-device.h
33         logind-button.c
34         logind-button.h
35         logind-action.c
36         logind-action.h
37         logind-seat.c
38         logind-seat.h
39         logind-session.c
40         logind-session.h
41         logind-session-device.c
42         logind-session-device.h
43         logind-user.c
44         logind-user.h
45         logind-inhibit.c
46         logind-inhibit.h
47         logind-dbus.c
48         logind-session-dbus.c
49         logind-seat-dbus.c
50         logind-user-dbus.c
51         logind-utmp.c
52         logind-acl.h
53 '''.split())
54
55 #if 1 /// elogind has some additional files:
56 liblogind_core_sources += [files('''
57         elogind-dbus.c
58         elogind-dbus.h
59 '''.split()),
60         libcore_la_sources,
61         sleep_files,
62         update_utmp_files]
63 #endif // 1
64 liblogind_core_sources += [logind_gperf_c]
65
66 logind_acl_c = files('logind-acl.c')
67 if conf.get('HAVE_ACL') == 1
68         liblogind_core_sources += logind_acl_c
69 endif
70
71 liblogind_core = static_library(
72         'logind-core',
73         liblogind_core_sources,
74         include_directories : includes,
75 #if 0 /// elogind needs audit support for utmp inclusion
76 #         dependencies : [libacl])
77 #else
78         dependencies : [libacl,
79                         libaudit])
80 #endif // 0
81
82 loginctl_sources = files('''
83         loginctl.c
84         sysfs-show.h
85         sysfs-show.c
86 '''.split())
87
88 #if 1 /// elogind has some additional files:
89 loginctl_sources += files('''
90         eloginctl.c
91         eloginctl.h
92 user_runtime_dir_sources = files('''
93         user-runtime-dir.c
94         logind.h
95 '''.split())
96 #endif // 1
97
98 #if 0 /// elogind builds itself unconditionally and with some adaptations
99 # if conf.get('ENABLE_LOGIND') == 1
100 #         logind_conf = configure_file(
101 #                 input : 'logind.conf.in',
102 #                 output : 'logind.conf',
103 #                 configuration : substs)
104 #         install_data(logind_conf,
105 #                      install_dir : pkgsysconfdir)
106
107 #         pam_systemd_sym = 'src/login/pam_systemd.sym'
108 #         pam_systemd_c = files('pam_systemd.c')
109
110 #         install_data('org.freedesktop.login1.conf',
111 #                      install_dir : dbuspolicydir)
112 #         install_data('org.freedesktop.login1.service',
113 #                      install_dir : dbussystemservicedir)
114 #         install_data('org.freedesktop.login1.policy',
115 #                      install_dir : polkitpolicydir)
116
117 #         install_data('70-power-switch.rules', install_dir : udevrulesdir)
118
119 #         if conf.get('HAVE_ACL') == 1
120 #                 install_data('70-uaccess.rules', install_dir : udevrulesdir)
121 #         endif
122
123 #         seat_rules = configure_file(
124 #                 input : '71-seat.rules.in',
125 #                 output : '71-seat.rules',
126 #                 configuration : substs)
127 #         install_data(seat_rules,
128 #                      install_dir : udevrulesdir)
129
130 #         custom_target(
131 #                 '73-seat-late.rules',
132 #                 input : '73-seat-late.rules.m4',
133 #                 output: '73-seat-late.rules',
134 #                 command : [meson_apply_m4, config_h, '@INPUT@'],
135 #                 capture : true,
136 #                 install : true,
137 #                 install_dir : udevrulesdir)
138
139 #         custom_target(
140 #                 'systemd-user',
141 #                 input : 'systemd-user.m4',
142 #                 output: 'systemd-user',
143 #                 command : [meson_apply_m4, config_h, '@INPUT@'],
144 #                 capture : true,
145 #                 install : pamconfdir != 'no',
146 #                 install_dir : pamconfdir)
147 # endif
148 #else
149 logind_conf = configure_file(
150         input : 'logind.conf.in',
151         output : 'logind.conf',
152         configuration : substs)
153 install_data(logind_conf,
154                 install_dir : pkgsysconfdir)
155
156 pam_elogind_sym = 'src/login/pam_elogind.sym'
157 pam_elogind_c = files('pam_elogind.c')
158
159 install_data('org.freedesktop.login1.conf',
160                 install_dir : dbuspolicydir)
161 logind_service = configure_file(
162         input : 'org.freedesktop.login1.service.in',
163         output : 'org.freedesktop.login1.service',
164         configuration : substs)
165 install_data(logind_service,
166                 install_dir : dbussystemservicedir)
167
168 i18n.merge_file(
169         'org.freedesktop.login1.policy',
170         input : 'org.freedesktop.login1.policy.in',
171         output : 'org.freedesktop.login1.policy',
172         po_dir : po_dir,
173         data_dirs : po_dir,
174         install : install_polkit,
175         install_dir : polkitpolicydir)
176
177 install_data('70-power-switch.rules',
178                 '70-uaccess.rules',
179                 install_dir : udevrulesdir)
180
181 foreach file : ['71-seat.rules',
182                 '73-seat-late.rules']
183         gen = configure_file(
184                 input : file + '.in',
185                 output : file,
186                 configuration : substs)
187         install_data(gen,
188                         install_dir : udevrulesdir)
189 endforeach
190
191 custom_target(
192         'elogind-user',
193         input : 'elogind-user.m4',
194         output: 'elogind-user',
195         command : [m4, '-P'] + m4_defines + ['@INPUT@'],
196         capture : true,
197         install : pamconfdir != 'no',
198         install_dir : pamconfdir)
199 #endif //0