bootstrap: Migrate linguas.sh into bootstrap.conf

Bootstrap has infrastructure for downloading/updating project po files
and generating the LINGUAS file. It uses wget instead of rsync, but
provides the same functionality, namely that only po files that have
a modification date before the corresponding one on the server will get
redownloaded. Bootstrap creates a pristine copy of the po files in
po/.reference, so update .gitignore to ignore that directory.

Bootstrap also creates the po/LINGUAS file, but it does not know to add
in GRUB's autogenerated po files. So move that code from linguas.sh into
the bootstrap epilogue.

Signed-off-by: Glenn Washburn <development@efficientek.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Glenn Washburn 2025-11-20 12:56:46 -06:00 committed by Daniel Kiper
parent 8a6ea7ab7b
commit 0dfec2945a

View File

@ -63,8 +63,6 @@ checkout_only_file=
copy=true copy=true
vc_ignore= vc_ignore=
SKIP_PO=n
# Build prerequisites # Build prerequisites
buildreq="\ buildreq="\
autoconf 2.64 autoconf 2.64
@ -109,9 +107,23 @@ bootstrap_post_import_hook () {
bootstrap_epilogue () { bootstrap_epilogue () {
mv INSTALL.grub INSTALL mv INSTALL.grub INSTALL
# Update translation files and create LINGUAS file used to determine if [ "x$SKIP_PO" = "x" ]; then
# the set of languages used to translate. # Generate LINGUAS with all supported languages. Bootstrap will
if [ "x$SKIP_PO" = "xn" ]; then # generate a LINGUAS, but it will not contain the autogenerated
./linguas.sh # 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
fi fi
} }