From 04bce24d4ef2dc1dd06a563c8b697c693f1c36c3 Mon Sep 17 00:00:00 2001 From: Frantisek Sumsal Date: Fri, 4 Aug 2023 18:02:01 +0200 Subject: [PATCH] test: ignore missing libudev when creating the test image Same scenario as with libsystemd - ldd might use unprefixed RPATH, and we install our own stuff into the image unconditionally anyway. Also, bail out early if we hit a missing DSO with a possibly helpful message. --- test/test-functions | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/test/test-functions b/test/test-functions index 908aeeef1b2..76fdba5857c 100644 --- a/test/test-functions +++ b/test/test-functions @@ -2331,14 +2331,7 @@ inst_libs() { [[ "$line" = 'not a dynamic executable' ]] && break # Ignore errors about our own stuff missing. This is most likely caused # by ldd attempting to use the unprefixed RPATH. - [[ "$line" =~ libsystemd.*\ not\ found ]] && continue - - if [[ "$line" =~ $so_regex ]]; then - file="${BASH_REMATCH[1]}" - [[ -e "${initdir:?}/$file" ]] && continue - inst_library "$file" - continue - fi + [[ "$line" =~ (libsystemd|libudev).*\ not\ found ]] && continue if [[ "$line" =~ not\ found ]]; then dfatal "Missing a shared library required by $bin." @@ -2347,6 +2340,12 @@ inst_libs() { dfatal "Cannot create a test image." exit 1 fi + + if [[ "$line" =~ $so_regex ]]; then + file="${BASH_REMATCH[1]}" + [[ -e "${initdir:?}/$file" ]] && continue + inst_library "$file" + fi done < <(LC_ALL=C ldd "$bin" 2>/dev/null) }