]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: fix locale installation when locale-gen is used
authorFrantisek Sumsal <frantisek@sumsal.cz>
Mon, 7 Nov 2022 10:57:59 +0000 (11:57 +0100)
committerFrantisek Sumsal <frantisek@sumsal.cz>
Mon, 7 Nov 2022 13:48:37 +0000 (14:48 +0100)
locale-gen might merge all compiled locales into a simple archive, so we
need to install it as well if necessary.

test/test-functions

index 80ce383e647eb3f0abb9865f8ce19cd9c2eb8a76..45ca47291698826825dbd8f70b72657119c77adc 100644 (file)
@@ -1988,14 +1988,19 @@ install_locales() {
         inst /usr/share/i18n/SUPPORTED || :
         inst_recursive /usr/share/i18n/charmaps
         inst_recursive /usr/share/i18n/locales
-        inst_recursive /usr/share/locale/en
-        inst_recursive /usr/share/locale/en_*
+        inst_recursive /usr/share/locale/en*
+        inst_recursive /usr/share/locale/de*
+        image_install /usr/share/locale/locale.alias
+        # locale-gen might either generate each locale separately or merge them
+        # into a single archive
+        if ! (inst_recursive /usr/lib/locale/C.*8 /usr/lib/locale/en_*8 ||
+              image_install /usr/lib/locale/locale-archive); then
+            dfatal "Failed to install required locales"
+            exit 1
+        fi
+    else
+        inst_recursive /usr/lib/locale/C.*8 /usr/lib/locale/en_*8
     fi
-
-    inst_recursive /usr/lib/locale/C.utf8
-    inst_recursive /usr/lib/locale/C.UTF-8
-    inst_recursive /usr/lib/locale/en_*.utf8
-    inst_recursive /usr/lib/locale/en_*.UTF-8
 }
 
 # shellcheck disable=SC2120