]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/login/meson.build
473cf340893ba405e89d2f3c64ce696df879c67d
[thirdparty/systemd.git] / src / login / meson.build
1 # SPDX-License-Identifier: LGPL-2.1-or-later
2
3 systemd_logind_sources = files(
4 'logind.c',
5 )
6
7 logind_gperf_c = custom_target(
8 'logind_gperf.c',
9 input : 'logind-gperf.gperf',
10 output : 'logind-gperf.c',
11 command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
12
13 liblogind_core_sources = files(
14 'logind-action.c',
15 'logind-brightness.c',
16 'logind-button.c',
17 'logind-core.c',
18 'logind-dbus.c',
19 'logind-device.c',
20 'logind-inhibit.c',
21 'logind-polkit.c',
22 'logind-seat-dbus.c',
23 'logind-seat.c',
24 'logind-session-dbus.c',
25 'logind-session-device.c',
26 'logind-session.c',
27 'logind-user-dbus.c',
28 'logind-user.c',
29 'logind-utmp.c',
30 )
31
32 liblogind_core_sources += [logind_gperf_c]
33
34 liblogind_core = static_library(
35 'logind-core',
36 liblogind_core_sources,
37 include_directories : includes,
38 dependencies : [libacl,
39 userspace],
40 build_by_default : false)
41
42 loginctl_sources = files(
43 'loginctl.c',
44 'sysfs-show.c',
45 )
46
47 user_runtime_dir_sources = files('user-runtime-dir.c')
48
49 pam_systemd_sym = 'src/login/pam_systemd.sym'
50 pam_systemd_c = files('pam_systemd.c')
51
52 enable_logind = conf.get('ENABLE_LOGIND') == 1
53
54 custom_target(
55 'logind.conf',
56 input : 'logind.conf.in',
57 output : 'logind.conf',
58 command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
59 install : enable_logind and install_sysconfdir_samples and pkgsysconfdir != 'no',
60 install_dir : pkgsysconfdir)
61
62 custom_target(
63 'systemd-user',
64 input : 'systemd-user.in',
65 output : 'systemd-user',
66 command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
67 install : enable_logind and pamconfdir != 'no',
68 install_dir : pamconfdir)
69
70 if enable_logind
71 install_data('org.freedesktop.login1.conf',
72 install_dir : dbuspolicydir)
73 install_data('org.freedesktop.login1.service',
74 install_dir : dbussystemservicedir)
75 install_data('org.freedesktop.login1.policy',
76 install_dir : polkitpolicydir)
77 endif
78
79 ############################################################
80
81 simple_tests += files(
82 'test-login-shared.c'
83 )
84
85 tests += [
86 {
87 'sources' : files('test-inhibit.c'),
88 'type' : 'manual',
89 },
90 {
91 'sources' : files('test-login-tables.c'),
92 'link_with' : [
93 liblogind_core,
94 libshared,
95 ],
96 'dependencies' : threads,
97 },
98 {
99 'sources' : files('test-session-properties.c'),
100 'type' : 'manual',
101 },
102 ]