]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: copy libgcc_s.so.1 to TPM2 test image on Debian-like systems
authorNick Rosbrook <nick.rosbrook@canonical.com>
Tue, 28 Jun 2022 20:48:21 +0000 (16:48 -0400)
committerLuca Boccassi <luca.boccassi@gmail.com>
Sat, 2 Jul 2022 14:01:30 +0000 (15:01 +0100)
On Ubuntu, cryptsetup does not link against libgcc_s.so.1 which leads to
the following test failure in TEST-70-TPM2:

 systemd[1]: Starting testsuite-70.service...
 systemd[329]: testsuite-70.service: Executing: /usr/lib/systemd/tests/testdata/units/testsuite-70.sh
 testsuite-70.sh[329]: + export SYSTEMD_LOG_LEVEL=debug
 testsuite-70.sh[329]: + SYSTEMD_LOG_LEVEL=debug
 testsuite-70.sh[329]: + img=/var/tmp/test.img
 testsuite-70.sh[329]: + dd if=/dev/zero of=/var/tmp/test.img bs=1024k count=20 status=none
 testsuite-70.sh[329]: + echo -n passphrase
 testsuite-70.sh[329]: + cryptsetup luksFormat -q --use-urandom /var/tmp/test.img /tmp/passphrase
 testsuite-70.sh[333]: libgcc_s.so.1 must be installed for pthread_exit to work
 testsuite-70.sh[329]: /usr/lib/systemd/tests/testdata/units/testsuite-70.sh:
     line 12: 333 Aborted (core dumped) cryptsetup luksFormat -q --use-urandom $img /tmp/passphrase

To fix this, manually install libgcc_s.so.1 to the test image if running
on Debian-like systems.

test/TEST-70-TPM2/test.sh

index d716614bcf7385bdb6bd6875b53f96a52fcd5784..b78670d051166cee32cb73c17acf65b688a52018 100755 (executable)
@@ -21,6 +21,11 @@ test_append_files() {
         install_dmevent
         generate_module_dependencies
         inst_binary tpm2_pcrextend
+
+        # On Ubuntu, cryptsetup does not link against libgcc_s.so.1
+        if get_bool "$LOOKS_LIKE_DEBIAN"; then
+            inst_library "/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)/libgcc_s.so.1"
+        fi
     )
 }