Bruno Haible <br...@clisp.org> writes: > Simon Josefsson wrote: >> is it possible to design a reliable >> caching mechanism? Something similar to CONFIG_SITE for autoconf? > > CONFIG_SITE is not reliable; that's the problem with it... > >> I find that ./gnulib-tool takes a long time and 95% of the time I use >> it, it ended up doing exactly the same thing as it did last time I ran >> it: copying a set of possibly patched files out of the gnulib directory. > > I use gnulib-tool with option --symlink in such cases. As long as the > module descriptions don't change, you don't need to re-run gnulib-tool > then.
My usage pattern is to frequently re-bootstrap from a clean git checkout to confirm that my changes still work properly for fresh rebuilds. The reason is that I don't trust 'make clean', 'make distclean', etc. That may not be a common work flow, but I'm pretty committed to it. I now remember that something like this was discussed before: https://git.savannah.gnu.org/cgit/libidn.git/commit/?id=9ae53e866a6fafa56db26d184ccae9c39dae7446 https://lists.gnu.org/archive/html/bug-gnulib/2021-05/msg00077.html I don't recall if I actually had any real problems with that approach... however I got a faster laptop and stoped using it to mimize any deviation from standard gnulib workflows. Maybe a hook below would allow further experiments? I am not proposing to commit this now since it is relatively easy for me to experiment with improvements by adding this to the bootstrap.conf script on projects that I work on. The GNULIB_BOOTSTRAP_SITE also allows me to change my setup without altering bootstrap.conf for every project I work on. /Simon diff --git a/top/bootstrap-funclib.sh b/top/bootstrap-funclib.sh index 9e40f4a3e4..9b8972f56c 100644 --- a/top/bootstrap-funclib.sh +++ b/top/bootstrap-funclib.sh @@ -194,6 +194,7 @@ bootstrap_sync=false # Make sure that bootstrap.conf is sourced from the current directory # if we were invoked as "sh bootstrap". conffile=`dirname "$me"`/bootstrap.conf +test -r "$GNULIB_BOOTSTRAP_SITE" && . "$GNULIB_BOOTSTRAP_SITE" test -r "$conffile" && . "$conffile" # ------------------------- Build-time prerequisites -------------------------
signature.asc
Description: PGP signature