bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: split bootstrap in two phases, GNU libidn


From: Bruno Haible
Subject: Re: split bootstrap in two phases, GNU libidn
Date: Sun, 24 Jul 2022 20:32:16 +0200

Hi dear GNU libidn developers (Simon et al.),

The 'bootstrap' script from Gnulib has been reorganized to work in two phases:
  (1) Fetch auxiliary files that are not in the git checkout.
      This is the part that requires network access and that has
      supply-chain concerns.
  (2) Generate files such as configure, config.h, Makefile.in etc.
      This includes running gnulib-tool.

See <https://lists.gnu.org/archive/html/bug-gnulib/2022-07/msg00053.html> for
details.

For GNU libidn some adjustment of the bootstrap.conf is needed. The 
bootstrap.conf
is meant to contain configuration settings, that is, define variables and
functions (hooks with special meanings). Instead, libidn/bootstrap.conf does 
some
actions directly. This will not work satisfactorily with the new two-phase
bootstrap. What is needed, is to move these actions into hooks:
  - Actions that may require network access belong in the
    bootstrap_post_pull_hook function.
  - Actions that merely regenerate files (without network access) usually
    belong in the bootstrap_post_import_hook.

Namely, these statements

printf "gdoc_MANS =\ngdoc_TEXINFOS =\n" > doc/Makefile.gdoc

and

GTKDOCIZE=$(which gtkdocize 2>/dev/null)
if test $? -ne 0; then
  echo "No gtk-doc support found. You can't build the docs."
  # rm because gtk-doc.make might be a link to a protected file
  rm -f gtk-doc.make 2>/dev/null
  echo "EXTRA_DIST =" >gtk-doc.make
  echo "CLEANFILES =" >>gtk-doc.make
  GTKDOCIZE=""
else
  mkdir -p lib/m4
  $GTKDOCIZE
fi

belong in the bootstrap_post_import_hook.

These adjustments will be needed the next time you use the '--bootstrap-sync'
option.

Bruno






reply via email to

[Prev in Thread] Current Thread [Next in Thread]