GNU bug report logs - #43435
bootstrap (bash-mesboot0) and ’make release’ error

Previous Next

Package: guix;

Reported by: zimoun <zimon.toutoune <at> gmail.com>

Date: Tue, 15 Sep 2020 22:03:02 UTC

Severity: normal

Done: zimoun <zimon.toutoune <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 43435 in the body.
You can then email your comments to 43435 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#43435; Package guix. (Tue, 15 Sep 2020 22:03:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to zimoun <zimon.toutoune <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 15 Sep 2020 22:03:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: bootstrap (bash-mesboot0) and ’make release’ error
Date: Wed, 16 Sep 2020 00:02:11 +0200
Dear,

Reading the release document [1] and going step by step, so I start from
a fresh worktree and branch and I tweak a bit (maybe I am doing wrong)
otherwise it fails:

   ./bootstrap && ./configure --localstatedir=/var/
   make
   make GUIX_MAINTENANCE_DIRECTORY=../../maintenance update-NEWS
   make doc-pot-update

then the target and the error:

--8<---------------cut here---------------start------------->8---
$ make release

[...]

make[4]: Leaving directory '/home/simon/src/guix/wk/rel/po/packages'
make  \
  top_distdir="guix-1.0.1.22205-a8360-dirty" distdir="guix-1.0.1.22205-a8360-dirty" \
  dist-info dist-hook
make[4]: Entering directory '/home/simon/src/guix/wk/rel'
  GEN      gen-ChangeLog
  GEN      gen-AUTHORS
echo 1.0.1.22205-a8360-dirty > "guix-1.0.1.22205-a8360-dirty/.tarball-version"
guix-1.0.1.22205-a8360-dirty/gnu/packages/commencement.scm:// /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
error: store file names embedded in the distribution
make[4]: *** [Makefile:6335: assert-no-store-file-names] Error 1
--8<---------------cut here---------------end--------------->8---

The checkout is based on commit a8360892d7.


On IRC [2], it rings a bell. :-)  The error should come from
’bash-mesboot0’ in (gnu packages commencement) at the ’modify-phases’
[3]:

--8<---------------cut here---------------start------------->8---
         (add-after 'configure 'configure-fixups
           (lambda _
             (substitute* "config.h"
               (("#define GETCWD_BROKEN 1") "#undef GETCWD_BROKEN"))
             (let ((config.h (open-file "config.h" "a")))
               (display (string-append "
// tcc: error: undefined symbol 'enable_hostname_completion'
#define enable_hostname_completion(on_or_off) 0

// /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
#define HAVE_POSIX_SIGNALS 1
#define endpwent(x) 0
")
                        config.h)
               (close config.h))
             #t))
--8<---------------cut here---------------end--------------->8---

Let indicate me how to investigate, I have no clue. :-)

All the best,
simon

[1]:
<https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/doc/release.org>
[2]: <http://logs.guix.gnu.org/guix/2020-09-15.log#175141>
[3]
<https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/commencement.scm#n786>




Information forwarded to bug-guix <at> gnu.org:
bug#43435; Package guix. (Wed, 16 Sep 2020 06:14:01 GMT) Full text and rfc822 format available.

Message #8 received at 43435 <at> debbugs.gnu.org (full text, mbox):

From: Jan Nieuwenhuizen <janneke <at> gnu.org>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: 43435 <at> debbugs.gnu.org
Subject: Re: bug#43435: bootstrap (bash-mesboot0) and ’make release’ error
Date: Wed, 16 Sep 2020 08:13:11 +0200
[Message part 1 (text/plain, inline)]
zimoun writes:

Hello zimoun!

> Reading the release document [1] and going step by step, so I start from
> a fresh worktree and branch and I tweak a bit (maybe I am doing wrong)
> otherwise it fails:

[..]

> guix-1.0.1.22205-a8360-dirty/gnu/packages/commencement.scm:// /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
> error: store file names embedded in the distribution
> make[4]: *** [Makefile:6335: assert-no-store-file-names] Error 1

So, this ’assert-no-store-file-names’ check in Makefile.am greps for

    -E "$(storedir)/[a-z0-9]{32}-" $(distdir) ;

which is really meant for source code; to catch the use of hardcoded
store file names.  Unfortunately, however ...

[..]

> On IRC [2], it rings a bell. :-)  The error should come from
> ’bash-mesboot0’ in (gnu packages commencement) at the ’modify-phases’
> [3]:
>
>          (add-after 'configure 'configure-fixups
>            (lambda _
>              (substitute* "config.h"
>                (("#define GETCWD_BROKEN 1") "#undef GETCWD_BROKEN"))
>              (let ((config.h (open-file "config.h" "a")))
>                (display (string-append "
> // tcc: error: undefined symbol 'enable_hostname_completion'
> #define enable_hostname_completion(on_or_off) 0
>
> // /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice

a commented store file name was added inside a code snippet.  Changing
this comment to something like

    // /gnu/store/...-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice

would pass the check, but this triggers a rebuld world.  So I am
proposing the attached patch that breaks the comment to pass the check,
and using unquoted string-append to  avoid a world rebuild.

Greetings,
Janneke

[0001-gnu-commencement-bash-mesboot0-Break-store-file-name.patch (text/x-patch, inline)]
From 7256bae0eebbec22c42a482ccfdf12fd8b874188 Mon Sep 17 00:00:00 2001
From: "Jan (janneke) Nieuwenhuizen" <janneke <at> gnu.org>
Date: Wed, 16 Sep 2020 06:57:51 +0200
Subject: [PATCH] gnu: commencement: bash-mesboot0: Break store file-name in
 comment.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=UTF-8

This fixes running ‘make release’.

* gnu/packages/commencement.scm (bash-mesboot0)[arguments]: Break store file
name in commend and add unquoted string-append to silence store file name
check.  The store file name check is meant for code, this file name was
unfortunately used is a comment.
---
 gnu/packages/commencement.scm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 565799c611..8a0864f26a 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -788,14 +788,17 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
              (substitute* "config.h"
                (("#define GETCWD_BROKEN 1") "#undef GETCWD_BROKEN"))
              (let ((config.h (open-file "config.h" "a")))
-               (display (string-append "
+               (display (string-append
+                         ;; XXX TODO: remove nested ,(string-append ...) and
+                         ;; store file name on next rebuild cycle
+                         ,(string-append "
 // tcc: error: undefined symbol 'enable_hostname_completion'
 #define enable_hostname_completion(on_or_off) 0
 
-// /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
+// /gnu/store/" "cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
 #define HAVE_POSIX_SIGNALS 1
 #define endpwent(x) 0
-")
+"))
                         config.h)
                (close config.h))
              #t))
-- 
Jan Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

[Message part 3 (text/plain, inline)]
-- 
Jan Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

Reply sent to zimoun <zimon.toutoune <at> gmail.com>:
You have taken responsibility. (Wed, 16 Sep 2020 11:12:02 GMT) Full text and rfc822 format available.

Notification sent to zimoun <zimon.toutoune <at> gmail.com>:
bug acknowledged by developer. (Wed, 16 Sep 2020 11:12:02 GMT) Full text and rfc822 format available.

Message #13 received at 43435-done <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Jan Nieuwenhuizen <janneke <at> gnu.org>
Cc: 43435-done <at> debbugs.gnu.org
Subject: Re: bug#43435: bootstrap (bash-mesboot0) and ’make release’ error
Date: Wed, 16 Sep 2020 13:11:40 +0200
Hi janneke,

On Wed, 16 Sep 2020 at 08:13, Jan Nieuwenhuizen <janneke <at> gnu.org> wrote:

> a commented store file name was added inside a code snippet.  Changing
> this comment to something like
>
>     // /gnu/store/...-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
>
> would pass the check, but this triggers a rebuld world.  So I am
> proposing the attached patch that breaks the comment to pass the check,
> and using unquoted string-append to  avoid a world rebuild.

Thank you for explaining and the patch.

As you noticed, it seems a duplicate of bug #43005
<http://issues.guix.gnu.org/issue/43005> and the fix had been pushed to
master as b85863f7ce99d05205e57358b36ff50656cca08b.

Closing.

All the best,
simon




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 14 Oct 2020 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 188 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.