unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* bootstrap guile version mismatch on core-updates
@ 2019-08-10 14:12 dftxbs3e
  2019-08-12  8:19 ` Efraim Flashner
  2019-08-26 10:27 ` Ludovic Courtès
  0 siblings, 2 replies; 3+ messages in thread
From: dftxbs3e @ 2019-08-10 14:12 UTC (permalink / raw)
  To: guix-devel


[-- Attachment #1.1.1: Type: text/plain, Size: 613 bytes --]

Hello,

It seems that guile2.2 is built by make-bootstrap.scm here:
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/make-bootstrap.scm?h=core-updates#n625

but guile2.0 is expected here:
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/bootstrap.scm?h=core-updates#n373

For the purpose of my ongoing port to powerpc64le-linux-gnu, I applied
the attached patch, but obviously that one wont work with the previously
built tarballs for x86_64 etc. Things would have to be split in parts
somehow, for old bootstraps with version 2.0 and newer ones with version
2.2.

Thanks


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.1.2: bootstrap-guile-2.2.patch --]
[-- Type: text/x-patch; name="bootstrap-guile-2.2.patch", Size: 1056 bytes --]

diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm
index d275c2867..c0b474a69 100644
--- a/gnu/packages/bootstrap.scm
+++ b/gnu/packages/bootstrap.scm
@ -384,8 +384,8 @@ or false to signal an error."
                     (lambda (p)
                       (format p "\
 #!~a
-export GUILE_SYSTEM_PATH=~a/share/guile/2.0
-export GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.0/ccache
+export GUILE_SYSTEM_PATH=~a/share/guile/2.2
+export GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.2/ccache
 exec -a \"~a0\" ~a \"~a@\"\n"
                               bash out out dollar guile-real dollar)))
                   (chmod guile   #o555)
@@ -400,8 +400,8 @@ cd $out
 ~a -dc < $GUILE_TARBALL | ~a xv
 
 # Use the bootstrap guile to create its own wrapper to set the load path.
-GUILE_SYSTEM_PATH=$out/share/guile/2.0 \
-GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.0/ccache \
+GUILE_SYSTEM_PATH=$out/share/guile/2.2 \
+GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.2/ccache \
 $out/bin/guile -c ~s $out ~a
 
 # Sanity check.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: bootstrap guile version mismatch on core-updates
  2019-08-10 14:12 bootstrap guile version mismatch on core-updates dftxbs3e
@ 2019-08-12  8:19 ` Efraim Flashner
  2019-08-26 10:27 ` Ludovic Courtès
  1 sibling, 0 replies; 3+ messages in thread
From: Efraim Flashner @ 2019-08-12  8:19 UTC (permalink / raw)
  To: dftxbs3e; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1648 bytes --]

On Sat, Aug 10, 2019 at 04:12:00PM +0200, dftxbs3e wrote:
> Hello,
> 
> It seems that guile2.2 is built by make-bootstrap.scm here:
> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/make-bootstrap.scm?h=core-updates#n625
> 
> but guile2.0 is expected here:
> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/bootstrap.scm?h=core-updates#n373
> 
> For the purpose of my ongoing port to powerpc64le-linux-gnu, I applied
> the attached patch, but obviously that one wont work with the previously
> built tarballs for x86_64 etc. Things would have to be split in parts
> somehow, for old bootstraps with version 2.0 and newer ones with version
> 2.2.
> 
> Thanks
> 

I had a similar issue with grep vs egrep/fgrep when I was porting
aarch64. My suggestion is to "make unilateral changes" to the source
where necessary to make the bootstrap work and then return to it later
and clean it up so it doesn't break all the other architectures.

If you do want to hack at it now, the two things I can think of
immediately are '(version-major+minor (package-version %bootstrap-guile))'
to see if it's 2.0.x or 2.2.x, or %target-system, which I found to be a
bit harder to work with that early in the bootstrap process.

I don't have my 32-bit PPC machine out or I could check to see what I
tried on that machine, but I think I just changed it to 2.2 and figured
I'd come back to it later.


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: bootstrap guile version mismatch on core-updates
  2019-08-10 14:12 bootstrap guile version mismatch on core-updates dftxbs3e
  2019-08-12  8:19 ` Efraim Flashner
@ 2019-08-26 10:27 ` Ludovic Courtès
  1 sibling, 0 replies; 3+ messages in thread
From: Ludovic Courtès @ 2019-08-26 10:27 UTC (permalink / raw)
  To: dftxbs3e; +Cc: guix-devel

Hi,

dftxbs3e <dftxbs3e@free.fr> skribis:

> It seems that guile2.2 is built by make-bootstrap.scm here:
> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/make-bootstrap.scm?h=core-updates#n625
>
> but guile2.0 is expected here:
> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/bootstrap.scm?h=core-updates#n373
>
> For the purpose of my ongoing port to powerpc64le-linux-gnu, I applied
> the attached patch, but obviously that one wont work with the previously
> built tarballs for x86_64 etc. Things would have to be split in parts
> somehow, for old bootstraps with version 2.0 and newer ones with version
> 2.2.

Indeed.  Could you arrange for your patch to be platform-dependent?

Another option would be to use 2.0 on powerpc64le-linux-gnu as well.

And another one would be to switch everyone to 2.2 sometime.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-08-26 10:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-10 14:12 bootstrap guile version mismatch on core-updates dftxbs3e
2019-08-12  8:19 ` Efraim Flashner
2019-08-26 10:27 ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).