octave-maintainers
[Top][All Lists]
Advanced

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

Re: gnulib is no longer an hg subrepo


From: Markus Mützel
Subject: Re: gnulib is no longer an hg subrepo
Date: Sun, 26 Jan 2020 19:52:55 +0100

Am 26. Januar 2020 um 18:05 Uhr schrieb "John W. Eaton":
> I removed the gnulib directories from the source trees on the buildbot 
> systems that I manage.  I think they should work now.  I also restarted 
> the buildbot worker process on three of the four systems I manage.  I 
> think they were disabled after recent upgrades.  Things should be back 
> to normal soon.

Thanks!

> To make updating gnulib easier for us, I think we will need to come up 
> with some solution in the bootstrap script so that it will automatically 
> fetch new changes for gnulib.  Otherwise, we will have to manually 
> update the gnulib sources when we change GNULIB_REVISION in 
> bootstrap.conf.  This will require some coordination with the gnulib 
> folks.  I looked at it but couldn't decide the right thing to do.  I 
> might be wrong, but it looks like the update will already happen if 
> gnulib is a git subrepo.  Otherwise, fetching new changes doesn't 
> happen.  Should that always happen, even if the GNULIB_SRCDIR is set? 
> Should a failed fetch be fatal by default?  Maybe you are not on the 
> network or don't have permission to write to a shared gnulib source 
> tree.  If it is fatal by default, then there should probably be an 
> option to allow skipping that step.  Too many twists and turns.  I gave 
> up.  Would someone like to take up this cause and try to make bootstrap 
> do the right thing for us?

Would this change help?

# HG changeset patch
# User Markus Mützel <address@hidden>
# Date 1580064128 -3600
#      Sun Jan 26 19:42:08 2020 +0100
# Node ID b08a376fb1c4cd1af470dcce467a7276813da234
# Parent  e6482c932d4bc097050f5fb2e4e5ffd98a5581df
bootstrap: Pull from remote git if $GNULIB_REVISION doesn't exist in local git.

diff -r e6482c932d4b -r b08a376fb1c4 bootstrap
--- a/bootstrap Sun Jan 26 17:00:05 2020 +0100
+++ b/bootstrap Sun Jan 26 19:42:08 2020 +0100
@@ -670,6 +670,9 @@
         || cleanup_gnulib
 
       trap - 1 2 13 15
+
+    elif ! git --git-dir="$gnulib_path"/.git cat-file commit 
"$GNULIB_REVISION"; then
+      git --git-dir="$gnulib_path"/.git pull
     fi
     GNULIB_SRCDIR=$gnulib_path
     ;;



This only executes if the package is not in a GIT repository (which is the case 
for Octave) and the "gnulib" sub-directory already exists.
It assumes that $gnulib_path (i.e. the "gnulib" sub-directory) is a GIT 
repository and pulls from remote if the specific commit cannot be found in the 
local repository.
This only happens if GNULIB_SRCDIR is not previously set.

Is this what we want?

Markus



reply via email to

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