make dist fails: "store file names embedded in the distribution"

  • Done
  • quality assurance status badge
Details
4 participants
  • Jan Nieuwenhuizen
  • Ludovic Courtès
  • Vagrant Cascadian
  • zimoun
Owner
unassigned
Submitted by
Vagrant Cascadian
Severity
normal
V
V
Vagrant Cascadian wrote on 23 Aug 2020 23:46
(address . bug-guix@gnu.org)
87wo1p3uja.fsf@yucca
When I tried to run make dist, it fails:

guix-1.0.1.21330-a8c8f-dirty/gnu/packages/commencement.scm:
// /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined t
error: store file names embedded in the distribution

The attached patch triggers pretty extensive rebuilds, but should fix
the problem.

live well,
vagrant
From 6e77f342c0deca73fa608365bbceb14aaf675b21 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Sun, 23 Aug 2020 14:10:57 -0700
Subject: [PATCH] gnu: commencement: bash-mesboot0: Remove store file name.

This is a follow-up to commit d9484fba91bc360ad18fe82cb9f4963ccb32c580, and
fixes "make dist".

* gnu/packages/commencement (bash-mesboot0): Remove reference to store item.
---
gnu/packages/commencement.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index aa30e3fa18..617a12016f 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -792,7 +792,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
// 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/…-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
#define HAVE_POSIX_SIGNALS 1
#define endpwent(x) 0
")
--
2.20.1
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCX0LjqQAKCRDcUY/If5cW
qmLbAP9dRtk8TgMx7+21PyIW4Lwzsd0X9tTTeZu2e5+nHjdH2wEAxWB4lrA6itSH
5pffL+VXTYrWHc5SU3P4eTOAPN6DywU=
=yGd5
-----END PGP SIGNATURE-----

J
J
Jan Nieuwenhuizen wrote on 24 Aug 2020 08:18
(name . Vagrant Cascadian)(address . vagrant@debian.org)(address . 43005@debbugs.gnu.org)
871rjwsh1y.fsf@gnu.org
Vagrant Cascadian writes:

Hello!

Toggle quote (9 lines)
> When I tried to run make dist, it fails:
>
> guix-1.0.1.21330-a8c8f-dirty/gnu/packages/commencement.scm:
> // /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined t
> error: store file names embedded in the distribution
>
> The attached patch triggers pretty extensive rebuilds, but should fix
> the problem.

Oops; your patch is fine (see nit-pick) for core-updates; but as you
noticed, on master we need to add an indirection to avoid rebuilds.
What about something like

Toggle snippet (26 lines)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index aa30e3fa18..48f9a47c6b 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -788,14 +788,16 @@ $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 "
+ ;; TODO: remove ,(string-append hack in next rebuild cycle
+ ;; together with store file name
+ (display (string-append ,(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))

Thanks for catching this!

Greetings,
Janneke

Toggle quote (5 lines)
> From 6e77f342c0deca73fa608365bbceb14aaf675b21 Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant@debian.org>
> Date: Sun, 23 Aug 2020 14:10:57 -0700
> Subject: [PATCH] gnu: commencement: bash-mesboot0: Remove store file name.

[..]

Toggle quote (13 lines)
> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
> index aa30e3fa18..617a12016f 100644
> --- a/gnu/packages/commencement.scm
> +++ b/gnu/packages/commencement.scm
> @@ -792,7 +792,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
> // 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/…-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
> #define HAVE_POSIX_SIGNALS 1
> #define endpwent(x) 0
> ")
^

This is the closing parenthesis of a string-append that has only this
one big string; what about removing that string-append altogether?

--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com| Avatar® http://AvatarAcademy.com
L
L
Ludovic Courtès wrote on 16 Sep 2020 12:21
(name . Jan Nieuwenhuizen)(address . janneke@gnu.org)
87o8m6nht6.fsf@gnu.org
Hello!

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

Toggle quote (35 lines)
>> When I tried to run make dist, it fails:
>>
>> guix-1.0.1.21330-a8c8f-dirty/gnu/packages/commencement.scm:
>> // /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined t
>> error: store file names embedded in the distribution
>>
>> The attached patch triggers pretty extensive rebuilds, but should fix
>> the problem.
>
> Oops; your patch is fine (see nit-pick) for core-updates; but as you
> noticed, on master we need to add an indirection to avoid rebuilds.
> What about something like
>
> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
> index aa30e3fa18..48f9a47c6b 100644
> --- a/gnu/packages/commencement.scm
> +++ b/gnu/packages/commencement.scm
> @@ -788,14 +788,16 @@ $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 "
> + ;; TODO: remove ,(string-append hack in next rebuild cycle
> + ;; together with store file name
> + (display (string-append ,(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
> -")
> +"))

Well done! Could you push to ‘master’ (with a “Fixes” line in the
commit log)?

Toggle quote (25 lines)
>> From 6e77f342c0deca73fa608365bbceb14aaf675b21 Mon Sep 17 00:00:00 2001
>> From: Vagrant Cascadian <vagrant@debian.org>
>> Date: Sun, 23 Aug 2020 14:10:57 -0700
>> Subject: [PATCH] gnu: commencement: bash-mesboot0: Remove store file name.
>
> [..]
>
>> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
>> index aa30e3fa18..617a12016f 100644
>> --- a/gnu/packages/commencement.scm
>> +++ b/gnu/packages/commencement.scm
>> @@ -792,7 +792,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
>> // 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/…-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
>> #define HAVE_POSIX_SIGNALS 1
>> #define endpwent(x) 0
>> ")
> ^
>
> This is the closing parenthesis of a string-append that has only this
> one big string; what about removing that string-append altogether?

Agreed.

Vagrant, could you push it to core-updates with this change?

Thanks,
Ludo’.
J
J
Jan Nieuwenhuizen wrote on 16 Sep 2020 12:47
(name . Ludovic Courtès)(address . ludo@gnu.org)
87h7ryhubb.fsf@gnu.org
Ludovic Courtès writes:

Hello,

Toggle quote (11 lines)
> Jan Nieuwenhuizen <janneke@gnu.org> skribis:
>
>> Oops; your patch is fine (see nit-pick) for core-updates; but as you
>> noticed, on master we need to add an indirection to avoid rebuilds.
>> What about something like

>> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
>> index aa30e3fa18..48f9a47c6b 100644
>> --- a/gnu/packages/commencement.scm
>> +++ b/gnu/packages/commencement.scm

[..]

Toggle quote (3 lines)
> Well done! Could you push to ‘master’ (with a “Fixes” line in the
> commit log)?

Pushed to master as b85863f7ce99d05205e57358b36ff50656cca08b.

Meanwile we have a duplicate bug: https://bugs.gnu.org/43435
(it finally rang a bell on IRC...).

Janneke

--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com| Avatar® http://AvatarAcademy.com
Z
Z
zimoun wrote on 16 Sep 2020 13:13
(name . Jan Nieuwenhuizen)(address . janneke@gnu.org)
CAJ3okZ1=r0a_bxCM-T--Wk6WZEoacfJAEihVHBDK0ywz3zpQPA@mail.gmail.com
On Wed, 16 Sep 2020 at 12:49, Jan Nieuwenhuizen <janneke@gnu.org> wrote:

Toggle quote (3 lines)
> Meanwile we have a duplicate bug: https://bugs.gnu.org/43435
> (it finally rang a bell on IRC...).

I have closed the duplicate referencing this one. Sorry for missing this one.

Cheers,
simon
V
V
Vagrant Cascadian wrote on 16 Sep 2020 20:04
(address . 43005@debbugs.gnu.org)
87wo0ty4vo.fsf@ponder
On 2020-09-16, Ludovic Courtès wrote:
Toggle quote (71 lines)
> Hello!
>
> Jan Nieuwenhuizen <janneke@gnu.org> skribis:
>
>>> When I tried to run make dist, it fails:
>>>
>>> guix-1.0.1.21330-a8c8f-dirty/gnu/packages/commencement.scm:
>>> // /gnu/store/cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined t
>>> error: store file names embedded in the distribution
>>>
>>> The attached patch triggers pretty extensive rebuilds, but should fix
>>> the problem.
>>
>> Oops; your patch is fine (see nit-pick) for core-updates; but as you
>> noticed, on master we need to add an indirection to avoid rebuilds.
>> What about something like
>>
>> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
>> index aa30e3fa18..48f9a47c6b 100644
>> --- a/gnu/packages/commencement.scm
>> +++ b/gnu/packages/commencement.scm
>> @@ -788,14 +788,16 @@ $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 "
>> + ;; TODO: remove ,(string-append hack in next rebuild cycle
>> + ;; together with store file name
>> + (display (string-append ,(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
>> -")
>> +"))
>
> Well done! Could you push to ‘master’ (with a “Fixes” line in the
> commit log)?
>
>>> From 6e77f342c0deca73fa608365bbceb14aaf675b21 Mon Sep 17 00:00:00 2001
>>> From: Vagrant Cascadian <vagrant@debian.org>
>>> Date: Sun, 23 Aug 2020 14:10:57 -0700
>>> Subject: [PATCH] gnu: commencement: bash-mesboot0: Remove store file name.
>>
>> [..]
>>
>>> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
>>> index aa30e3fa18..617a12016f 100644
>>> --- a/gnu/packages/commencement.scm
>>> +++ b/gnu/packages/commencement.scm
>>> @@ -792,7 +792,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
>>> // 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/…-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
>>> #define HAVE_POSIX_SIGNALS 1
>>> #define endpwent(x) 0
>>> ")
>> ^
>>
>> This is the closing parenthesis of a string-append that has only this
>> one big string; what about removing that string-append altogether?
>
> Agreed.
>
> Vagrant, could you push it to core-updates with this change?

Not in a good position to push anything for a few days; if someone else
could that would be great!

live well,
vagrant
J
J
Jan Nieuwenhuizen wrote on 16 Sep 2020 23:44
(name . Vagrant Cascadian)(address . vagrant@debian.org)
87a6xp75xw.fsf@gnu.org
Vagrant Cascadian writes:

Hi!

Toggle quote (14 lines)
> On 2020-09-16, Ludovic Courtès wrote:
>> Hello!
>>
>> Jan Nieuwenhuizen <janneke@gnu.org> skribis:
>>> This is the closing parenthesis of a string-append that has only this
>>> one big string; what about removing that string-append altogether?
>>
>> Agreed.
>>
>> Vagrant, could you push it to core-updates with this change?
>
> Not in a good position to push anything for a few days; if someone else
> could that would be great!

Sure. Pushed with minor change (removing encompassing string-append) to
core-updates as 7467f9857dc530861735ebffe2c9376c8dfb80b7

Thanks!
Janneke

--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com| Avatar® http://AvatarAcademy.com
Closed
?