aboutsummaryrefslogtreecommitdiff
path: root/modules/meson.build
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@strace.io>2024-09-01 08:00:00 +0000
committerDmitry V. Levin <ldv@strace.io>2024-09-10 08:00:00 +0000
commit7fb6beed01bc1a59438b8b2a9b34b2dba296e553 (patch)
tree2f6ae951c4d94d331e29e348e6ffd9846687be33 /modules/meson.build
parentaa3e91322cbc651bb130ec8636b28d676979d4fe (diff)
downloadpam-7fb6beed01bc1a59438b8b2a9b34b2dba296e553.tar.gz
pam-7fb6beed01bc1a59438b8b2a9b34b2dba296e553.tar.bz2
pam-7fb6beed01bc1a59438b8b2a9b34b2dba296e553.zip
meson: build Linux-PAM using meson
On my non-representative hardware, the full build using autotools (./autogen.sh && CFLAGS=-O2 ./configure && make -j`nproc` && make -j`nproc` install) takes about 45 seconds. On the same hardware, the full build using meson (meson setup -Doptimization=2 dir && meson compile -C dir && meson install -C dir) takes just about 7.5 seconds.
Diffstat (limited to 'modules/meson.build')
-rw-r--r--modules/meson.build51
1 files changed, 51 insertions, 0 deletions
diff --git a/modules/meson.build b/modules/meson.build
new file mode 100644
index 00000000..20cebdbb
--- /dev/null
+++ b/modules/meson.build
@@ -0,0 +1,51 @@
+pam_module_map = 'modules.map'
+pam_module_map_path = meson.current_source_dir() / pam_module_map
+
+pam_module_link_deps = ['..' / pam_module_map]
+pam_module_link_args = ['-Wl,--version-script=' + pam_module_map_path]
+
+subdir('pam_access')
+subdir('pam_canonicalize_user')
+subdir('pam_debug')
+subdir('pam_deny')
+subdir('pam_echo')
+subdir('pam_env')
+subdir('pam_exec')
+subdir('pam_faildelay')
+subdir('pam_faillock')
+subdir('pam_filter')
+subdir('pam_ftp')
+subdir('pam_group')
+subdir('pam_issue')
+subdir('pam_keyinit')
+subdir('pam_lastlog')
+subdir('pam_limits')
+subdir('pam_listfile')
+subdir('pam_localuser')
+subdir('pam_loginuid')
+subdir('pam_mail')
+subdir('pam_mkhomedir')
+subdir('pam_motd')
+subdir('pam_namespace')
+subdir('pam_nologin')
+subdir('pam_permit')
+subdir('pam_pwhistory')
+subdir('pam_rhosts')
+subdir('pam_rootok')
+subdir('pam_securetty')
+subdir('pam_selinux')
+subdir('pam_sepermit')
+subdir('pam_setquota')
+subdir('pam_shells')
+subdir('pam_stress')
+subdir('pam_succeed_if')
+subdir('pam_time')
+subdir('pam_timestamp')
+subdir('pam_tty_audit')
+subdir('pam_umask')
+subdir('pam_unix')
+subdir('pam_userdb')
+subdir('pam_usertype')
+subdir('pam_warn')
+subdir('pam_wheel')
+subdir('pam_xauth')