chiark / gitweb /
Prep v239: Add new user-runtime-dir main() function as user_runtime_dir().
[elogind.git] / src / login / meson.build
1 # SPDX-License-Identifier: LGPL-2.1+
2 #if 0 /// rename to elogind
3
4 # systemd_logind_sources = files('''
5 #         logind.c
6 #         logind.h
7 # '''.split())
8 #else
9 elogind_sources = files('''
10         elogind.c
11         elogind.h
12         logind.c
13         logind.h
14 '''.split())
15 #endif // 0
16
17 logind_gperf_c = custom_target(
18         'logind_gperf.c',
19         input : 'logind-gperf.gperf',
20         output : 'logind-gperf.c',
21         command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
22
23 liblogind_core_sources = files('''
24         logind-core.c
25         logind-device.c
26         logind-device.h
27         logind-button.c
28         logind-button.h
29         logind-action.c
30         logind-action.h
31         logind-seat.c
32         logind-seat.h
33         logind-session.c
34         logind-session.h
35         logind-session-device.c
36         logind-session-device.h
37         logind-user.c
38         logind-user.h
39         logind-inhibit.c
40         logind-inhibit.h
41         logind-dbus.c
42         logind-session-dbus.c
43         logind-seat-dbus.c
44         logind-user-dbus.c
45         logind-utmp.c
46         logind-acl.h
47 '''.split())
48
49 #if 1 /// elogind has some additional files:
50 liblogind_core_sources += [files('''
51         elogind-dbus.c
52         elogind-dbus.h
53         user-runtime-dir.c
54 '''.split()),
55         libcore_la_sources,
56         sleep_files,
57         update_utmp_files]
58 #endif // 1
59 liblogind_core_sources += [logind_gperf_c]
60
61 logind_acl_c = files('logind-acl.c')
62 if conf.get('HAVE_ACL') == 1
63         liblogind_core_sources += logind_acl_c
64 endif
65
66 liblogind_core = static_library(
67         'logind-core',
68         liblogind_core_sources,
69         include_directories : includes,
70 #if 0 /// elogind needs audit support for utmp inclusion
71 #         dependencies : [libacl])
72 #else
73         dependencies : [libacl,
74                         libaudit])
75 #endif // 0
76
77 loginctl_sources = files('''
78         loginctl.c
79         sysfs-show.h
80         sysfs-show.c
81 '''.split())
82
83 #if 0 /// UNNEEDED by elogind
84 # user_runtime_dir_sources = files('''
85 #         user-runtime-dir.c
86 #         logind.h
87 # '''.split())
88 #endif // 0
89
90 #if 1 /// elogind has and needs some additional files:
91 loginctl_sources += files('''
92         eloginctl.c
93         eloginctl.h
94 '''.split())
95 #endif // 1
96
97 #if 0 /// elogind builds itself unconditionally
98 # if conf.get('ENABLE_LOGIND') == 1
99 #endif // 0
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_elogind_sym = 'src/login/pam_elogind.sym'
108         pam_elogind_c = files('pam_elogind.c')
109
110         install_data('org.freedesktop.login1.conf',
111                      install_dir : dbuspolicydir)
112 #if 0 /// Works a bit differently here, as elogind allows dbus activation.
113 #         install_data('org.freedesktop.login1.service',
114 #                      install_dir : dbussystemservicedir)
115 #else
116         logind_service = configure_file(
117                 input : 'org.freedesktop.login1.service.in',
118                 output : 'org.freedesktop.login1.service',
119                 configuration : substs)
120         install_data(logind_service,
121                 install_dir : dbussystemservicedir)
122 #endif // 0
123         install_data('org.freedesktop.login1.policy',
124                      install_dir : polkitpolicydir)
125
126         install_data('70-power-switch.rules', install_dir : udevrulesdir)
127
128         if conf.get('HAVE_ACL') == 1
129                 install_data('70-uaccess.rules', install_dir : udevrulesdir)
130         endif
131
132         seat_rules = configure_file(
133                 input : '71-seat.rules.in',
134                 output : '71-seat.rules',
135                 configuration : substs)
136         install_data(seat_rules,
137                      install_dir : udevrulesdir)
138
139 #if 1 /// elogind needs two passes of this file
140         seat_late_rules = configure_file(
141                 input : '73-seat-late.rules.in',
142                 output : '73-seat-late.rules.m4',
143                 configuration : substs)
144 #endif // 1
145
146         custom_target(
147                 '73-seat-late.rules',
148 #if 0 /// elogind must configure the source
149 #                 input : '73-seat-late.rules.m4',
150 #else
151                 input : seat_late_rules,
152 #endif // 0
153                 output: '73-seat-late.rules',
154                 command : [meson_apply_m4, config_h, '@INPUT@'],
155                 capture : true,
156                 install : true,
157                 install_dir : udevrulesdir)
158
159         custom_target(
160                 'elogind-user',
161                 input : 'elogind-user.m4',
162                 output: 'elogind-user',
163                 command : [meson_apply_m4, config_h, '@INPUT@'],
164                 capture : true,
165                 install : pamconfdir != 'no',
166                 install_dir : pamconfdir)
167 #if 0 /// elogind builds itself unconditionally
168 # endif
169 #endif //0