Remove unnecessary subshells. Loop over autogenerated po files only once.
Use existing LINGUAS created by bootstrap instead of finding po files
again.

Add wget as a soft requirement now that we are using bootstrap's code
for updating translation files. This should only be needed if updated
translations are desired, which is the default. There should be older
translation files already, and wget is not necessary if those will
suffice.

Signed-off-by: Glenn Washburn <[email protected]>
---
 INSTALL        |  1 +
 bootstrap.conf | 23 +++++++++++------------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/INSTALL b/INSTALL
index f49bfdd2d0c5..056e36e06df3 100644
--- a/INSTALL
+++ b/INSTALL
@@ -25,6 +25,7 @@ configuring the GRUB.
 * Flex 2.5.35 or later
 * pkg-config
 * GNU patch
+* wget (for downloading updated translations)
 * Other standard GNU/Unix tools
 * a libc with large file support (e.g. glibc 2.1 or later)
 
diff --git a/bootstrap.conf b/bootstrap.conf
index 79d4248c84aa..40e0b0cf47bb 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -113,17 +113,16 @@ bootstrap_epilogue () {
     # languages.
     autogenerated="en@quot en@hebrew de@hebrew en@cyrillic en@greek en@arabic 
en@piglatin de_CH"
 
-    for x in $autogenerated; do
-      rm -f "po/$x.po";
-    done
-
-    (
-      (
-        cd po && ls *.po| cut -d. -f1
-        for x in $autogenerated; do
-            echo "$x";
-        done
-      ) | sort | uniq | xargs
-    ) >po/LINGUAS
+    {
+      # NOTE: xargs has no POSIX compliant way to avoid running the program
+      # given as an argument when there are no input lines. So ensure that
+      # basename is always run with at least one argument, the empty string,
+      # and ignore the first line of output.
+      ls po/*.po | xargs -L 100 basename -s .po -a "" | tail -n +2
+      for x in $autogenerated; do
+        rm -f "po/$x.po"
+        echo "$x"
+      done
+    } | sort | uniq | xargs >po/LINGUAS
   fi
 }
-- 
2.34.1


_______________________________________________
Grub-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to