I've seen several times and believe that quite often people building GRUB
forget to run linguas.sh to download and setup the build for the external
translations. So make setting up LINGUAS happen by default when running
bootstrap. If a user does not want to setup LINGUAS it can be skipped by
running bootstrap with the existing --skip-po argument. In fact, bootstrap
already has functionality that automatically downloads a projects translations,
so switch to using that in patch #2. Also it is needed to run some extra code
because bootstrap will not add GRUB's autogenerated languages. In patch #3
simplify the LINGUAS generation and patch #4 fixes a couple issues in the
INSTALL that is dependent on patch #1.

NOTE: Instead of using the non-POSIX -r option to xargs, use a more POSIX
friendly way of ensuring that basename is not run with no arguments.

v3:
 * Fix an issue where basename could be called by xargs with no arguments

v2:
 * There wasn't intentionally a v1, but I accidentally created a patch
   series, and then I realized that patch #2 depends on patch #1.

Glenn

Glenn Washburn (4):
  bootstrap: Run linguas.sh in bootstrap epilogue
  bootstrap: Migrate linguas.sh into bootstrap.conf
  bootstrap: Condense and simplify LINGUAS generation
  INSTALL: Fix a grammatical error

 INSTALL        | 25 +++++++++++--------------
 bootstrap.conf | 21 +++++++++++++++++++--
 2 files changed, 30 insertions(+), 16 deletions(-)

Range-diff against v2:
1:  62f0c3965921 = 1:  20d27aed572a bootstrap: Run linguas.sh in bootstrap 
epilogue
2:  7ffeeb595903 = 2:  6b6fed0beba3 bootstrap: Migrate linguas.sh into 
bootstrap.conf
3:  b9bbe64cd8b8 ! 3:  3678bd68c4b6 bootstrap: Condense and simplify LINGUAS 
generation
    @@ bootstrap.conf: bootstrap_epilogue () {
     -      ) | sort | uniq | xargs
     -    ) >po/LINGUAS
     +    {
    -+      ls po/*.po | xargs -L 100 basename -s .po -a
    ++      # 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"
4:  eb88d70454f4 = 4:  c74c01d6fd85 INSTALL: Fix a grammatical error
-- 
2.34.1


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

Reply via email to