Build the PAM module on macOS (0.10.1)

Cargo names a cdylib .dylib on macOS, so copying libahfail_pam.so out of
the target directory failed there, as the first real macOS build in the
Homebrew tap's Actions showed. The installed name stays .so.

Claude-Session: https://claude.ai/code/session_012LCTmU2ewo8tnM1dByYAoG
This commit is contained in:
Asger Geel Weirsøe
2026-09-30 21:59:59 +02:00
parent 8b777652be
commit 4304a90b3e
3 changed files with 7 additions and 4 deletions
Generated
+1 -1
View File
@@ -10,7 +10,7 @@ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
[[package]]
name = "ahfail"
version = "0.10.0"
version = "0.10.1"
dependencies = [
"ahfail-ui",
"cc",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "ahfail"
version = "0.10.0"
version = "0.10.1"
edition = "2021"
description = "Screen locker that says ah ah ah when you get the password wrong"
license = "AGPL-3.0-only"
+5 -2
View File
@@ -1,7 +1,7 @@
project(
'ahfail',
['c', 'rust'],
version: '0.10.0',
version: '0.10.1',
meson_version: '>=1.3.0',
default_options: ['warning_level=3', 'c_std=c11']
)
@@ -36,8 +36,11 @@ is_linux = host_machine.system() == 'linux'
cargo_pkgs = '-p ahfail-gtklock -p ahfail-pam -p ahfail-display' + (is_linux ? ' -p ahfail' : '')
cargo_outputs = ['libahfail_module.a', 'libahfail_pam.so', 'ahfail-display'] + (is_linux ? ['ahfail'] : [])
cargo_install_dirs = [false, get_option('libdir') / 'ahfail', get_option('libdir') / 'ahfail'] + (is_linux ? [get_option('bindir')] : [])
# Cargo names a cdylib .dylib on macOS. The installed name stays
# libahfail_pam.so: PAM loads the module by path, whatever the extension.
pam_built = host_machine.system() == 'darwin' ? 'libahfail_pam.dylib' : 'libahfail_pam.so'
cargo_copy = (' && cp "@OUTDIR@/target/release/libahfail_module.a" "@OUTPUT0@"'
+ ' && cp "@OUTDIR@/target/release/libahfail_pam.so" "@OUTPUT1@"'
+ ' && cp "@OUTDIR@/target/release/' + pam_built + '" "@OUTPUT1@"'
+ ' && cp "@OUTDIR@/target/release/ahfail-display" "@OUTPUT2@"'
+ (is_linux ? ' && cp "@OUTDIR@/target/release/ahfail" "@OUTPUT3@"' : ''))