aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2021-11-24 20:26:20 -0500
committerNirbheek Chauhan <nirbheek@centricular.com>2021-11-25 21:14:14 +0530
commitdd566984a2ba5436a55cc4ef39088f0a9c5a3026 (patch)
tree6ef7ac4a7f53a01cdd97f93bd182deda4605c398
parent0b2be8e89d872d3a058efc2d39a714c6b2b22aaa (diff)
downloadmeson-dd566984a2ba5436a55cc4ef39088f0a9c5a3026.zip
meson-dd566984a2ba5436a55cc4ef39088f0a9c5a3026.tar.gz
meson-dd566984a2ba5436a55cc4ef39088f0a9c5a3026.tar.bz2
minstall: do not run ldconfig on the *BSDs
They don't utilize a soname cache, so running ldconfig without arguments is basically pointless -- and at least some of them are buggy: running ldconfig with the verbose flag switches on "delete all directories from the hints file, and recreate it using 0 command-line positional arguments", which would soft-brick the system. Fixes #9592
-rw-r--r--mesonbuild/minstall.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
index 7d0da13..cb87faf 100644
--- a/mesonbuild/minstall.py
+++ b/mesonbuild/minstall.py
@@ -18,6 +18,7 @@ import argparse
import errno
import os
import pickle
+import platform
import shlex
import shutil
import subprocess
@@ -251,6 +252,9 @@ def apply_ldconfig(dm: DirMaker) -> None:
# If we don't have ldconfig, failure is ignored quietly.
return
+ if 'bsd' in platform.system().lower():
+ return
+
# Try to update ld cache, it could fail if we don't have permission.
proc, out, err = Popen_safe(['ldconfig', '-v'])
if proc.returncode == 0: