From: Jan Nieuwenhuizen <janneke@gnu.org>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 55227@debbugs.gnu.org
Subject: [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap
Date: Sun, 15 May 2022 08:31:15 +0200 [thread overview]
Message-ID: <87tu9rqpcc.fsf@gnu.org> (raw)
In-Reply-To: <87a6bkgq9u.fsf_-_@gnu.org> ("Ludovic Courtès"'s message of "Sat, 14 May 2022 16:09:01 +0200")
[-- Attachment #1: Type: text/plain, Size: 902 bytes --]
Ludovic Courtès writes:
Hey
> "Jan (janneke) Nieuwenhuizen" <janneke@gnu.org> skribis:
>
>> Stage0-posix is a skeleton for bootstrapping all of Stage0 for POSIX systems.
>> On x86-linux, from the 357-byte hex0-seed binary from the bootstrap-seeds, it
>> builds hex0, kaem, hex1, catm, hex2, M0, cc_x86, M1, M2,
>> get_machine, (mescc-tools), and M2-Planet.
>>
>> * gnu/packages/commencement.scm (stage0-posix): New variable.
>
> [...]
>
> We could get rid of the remaining (assoc-ref …) expressions, along the
> lines of:
>
> https://issues.guix.gnu.org/55227#12-lineno40
Ah yes. I have pushed the patches below to wip-full-source-bootstrap,
WYDT?
Is there a way yet to change things like these:
(native-inputs
`(("bootstrap-seeds" ,bootstrap-seeds)
,@(%boot-gash-inputs)))
I didn't really find an example or way to do this.
Janneke
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-commencement-bootstrap-seeds-Use-new-package-sty.patch --]
[-- Type: text/x-patch, Size: 1265 bytes --]
From 02874b2a43a6255c83d67d40c88742b2a4234c27 Mon Sep 17 00:00:00 2001
From: "Jan (janneke) Nieuwenhuizen" <janneke@gnu.org>
Date: Sat, 14 May 2022 21:27:55 +0200
Subject: [PATCH 1/3] gnu: commencement: bootstrap-seeds: Use new package
style.
* gnu/packages/commencement.scm (bootstrap-seeds)[arguments]: Also use gexps
for inputs and output.
---
gnu/packages/commencement.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 0390c43023..ffaa5f03de 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -289,9 +289,9 @@ (define bootstrap-seeds
#:builder
#~(begin
(use-modules (guix build utils))
- (let ((source (assoc-ref %build-inputs "source"))
- (tar (assoc-ref %build-inputs "bootar"))
- (out (assoc-ref %outputs "out")))
+ (let ((source #$(package-source this-package))
+ (tar #$(this-package-native-input "bootar"))
+ (out #$output))
(setenv "PATH" (string-append tar "/bin:"))
(invoke "tar" "xvf" source)
(mkdir-p out)
--
2.35.1
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-commencement-stage0-posix-Use-new-package-style.patch --]
[-- Type: text/x-patch, Size: 1870 bytes --]
From f99f4a2257ceaf3b555e284d241d897da43b2868 Mon Sep 17 00:00:00 2001
From: "Jan (janneke) Nieuwenhuizen" <janneke@gnu.org>
Date: Sat, 14 May 2022 21:24:52 +0200
Subject: [PATCH 2/3] gnu: commencement: stage0-posix: Use new package style.
* gnu/packages/commencement.scm (stage0-posix)[arguments]: Also use gexps for
inputs and output.
---
gnu/packages/commencement.scm | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index ffaa5f03de..0089c2607c 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -365,13 +365,14 @@ (define stage0-posix
#:builder
#~(begin
(use-modules (guix build utils))
- (let* ((bootstrap-seeds (assoc-ref %build-inputs "bootstrap-seeds"))
- (source (assoc-ref %build-inputs "source"))
- (tar (assoc-ref %build-inputs "bootar"))
- (bash (assoc-ref %build-inputs "bash"))
- (coreutils (assoc-ref %build-inputs "coreutils"))
- (guile (assoc-ref %build-inputs "guile"))
- (out (assoc-ref %outputs "out"))
+ (let* ((bootstrap-seeds #$(this-package-native-input
+ "bootstrap-seeds"))
+ (source #$(package-source this-package))
+ (tar #$(this-package-native-input "bootar"))
+ (bash #$(this-package-native-input "bash"))
+ (coreutils #$(this-package-native-input "coreutils"))
+ (guile #$(this-package-input "guile"))
+ (out #$output)
(bindir (string-append out "/bin"))
(target (or #$(%current-target-system)
#$(%current-system)))
--
2.35.1
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0003-gnu-commencement-mes-boot-Use-new-package-style.patch --]
[-- Type: text/x-patch, Size: 5815 bytes --]
From 89a8bd925774911f225713de6bf2e4c94319b640 Mon Sep 17 00:00:00 2001
From: "Jan (janneke) Nieuwenhuizen" <janneke@gnu.org>
Date: Sat, 14 May 2022 21:39:06 +0200
Subject: [PATCH 3/3] gnu: commencement: mes-boot: Use new package style.
* gnu/packages/commencement.scm (mes-boot)[arguments]: Use gexp for modify
phases.
---
gnu/packages/commencement.scm | 98 +++++++++++++++++------------------
1 file changed, 49 insertions(+), 49 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 0089c2607c..268dfe9795 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -445,55 +445,55 @@ (define mes-boot
(snippet #f))))
,@(%boot-gash-inputs)))
(arguments
- `(#:implicit-inputs? #f
- #:tests? #f
- #:guile ,%bootstrap-guile
- #:strip-binaries? #f ;no strip yet
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'unpack-seeds
- (lambda _
- (let ((nyacc-source (assoc-ref %build-inputs "nyacc-source")))
- (with-directory-excursion ".."
- (invoke "tar" "-xvf" nyacc-source)))))
- (replace 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (gash (assoc-ref inputs "bash"))
- (mes (assoc-ref inputs "mes"))
- (dir (with-directory-excursion ".." (getcwd))))
- (setenv "GUILE_LOAD_PATH" (string-append
- dir "/nyacc-1.00.2/module"))
- (invoke "gash" "configure.sh"
- (string-append "--prefix=" out)
- "--host=i686-linux-gnu"))))
- (replace 'build
- (lambda _
- (invoke "gash" "bootstrap.sh")))
- (delete 'check)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (substitute* "install.sh" ; show some progress
- ((" -xf") " -xvf")
- (("^( *)((cp|mkdir|tar) [^']*[^\\])\n" all space cmd)
- (string-append space "echo '" cmd "'\n"
- space cmd "\n")))
- (invoke "gash" "install.sh")
- ;; Keep ASCII output, for friendlier comparison and bisection
- (let* ((out (assoc-ref outputs "out"))
- (cache (string-append out "/lib/cache")))
- (define (objects-in-dir dir)
- (find-files dir
- (lambda (name stat)
- (and (equal? (dirname name) dir)
- (or (string-suffix? ".M1" name)
- (string-suffix? ".hex2" name)
- (string-suffix? ".o" name)
- (string-suffix? ".s" name))))))
- (for-each (lambda (x) (install-file x cache))
- (append (objects-in-dir "m2")
- (objects-in-dir ".")
- (objects-in-dir "mescc-lib")))))))))
+ (list
+ #:implicit-inputs? #f
+ #:tests? #f
+ #:guile %bootstrap-guile
+ #:strip-binaries? #f ;no strip yet
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-seeds
+ (lambda _
+ (let ((nyacc-source #$(this-package-native-input "nyacc-source")))
+ (with-directory-excursion ".."
+ (invoke "tar" "-xvf" nyacc-source)))))
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out #$output)
+ (gash #$(this-package-native-input "bash"))
+ (dir (with-directory-excursion ".." (getcwd))))
+ (setenv "GUILE_LOAD_PATH" (string-append
+ dir "/nyacc-1.00.2/module"))
+ (invoke "gash" "configure.sh"
+ (string-append "--prefix=" out)
+ "--host=i686-linux-gnu"))))
+ (replace 'build
+ (lambda _
+ (invoke "gash" "bootstrap.sh")))
+ (delete 'check)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "install.sh" ; show some progress
+ ((" -xf") " -xvf")
+ (("^( *)((cp|mkdir|tar) [^']*[^\\])\n" all space cmd)
+ (string-append space "echo '" cmd "'\n"
+ space cmd "\n")))
+ (invoke "gash" "install.sh")
+ ;; Keep ASCII output, for friendlier comparison and bisection
+ (let* ((out #$output)
+ (cache (string-append out "/lib/cache")))
+ (define (objects-in-dir dir)
+ (find-files dir
+ (lambda (name stat)
+ (and (equal? (dirname name) dir)
+ (or (string-suffix? ".M1" name)
+ (string-suffix? ".hex2" name)
+ (string-suffix? ".o" name)
+ (string-suffix? ".s" name))))))
+ (for-each (lambda (x) (install-file x cache))
+ (append (objects-in-dir "m2")
+ (objects-in-dir ".")
+ (objects-in-dir "mescc-lib")))))))))
(native-search-paths
(list (search-path-specification
(variable "C_INCLUDE_PATH")
--
2.35.1
[-- Attachment #5: Type: text/plain, Size: 156 bytes --]
--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://lilypond.org
Freelance IT https://JoyOfSource.com | Avatar® https://AvatarAcademy.com
next prev parent reply other threads:[~2022-05-15 6:32 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-02 18:21 [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Jan (janneke) Nieuwenhuizen
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 1/8] commencement: Add bootstrap-seeds Jan (janneke) Nieuwenhuizen
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 2/8] commencement: Add stage0-posix Jan (janneke) Nieuwenhuizen
2022-05-09 3:49 ` Thiago Jung Bauermann via Guix-patches via
2022-05-09 8:14 ` Jan Nieuwenhuizen
2022-05-12 10:45 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 3/8] commencement: mes-boot: Update to 0.24, build with M2-Planet Jan (janneke) Nieuwenhuizen
2022-05-12 10:46 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 4/8] commencement: tcc-boot0: Use NYACC-1.00.2 Jan (janneke) Nieuwenhuizen
2022-05-12 10:47 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 5/8] commencement: tcc-boot0: Update to 0.9.26-1136-g0fbeb2dd Jan (janneke) Nieuwenhuizen
2022-05-12 10:50 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 6/8] bootstrap: Remove %bootstrap-mescc-tools, %bootstrap-mes Jan (janneke) Nieuwenhuizen
2022-05-12 10:50 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 7/8] commencement: Remove %bootstrap-mes-rewired Jan (janneke) Nieuwenhuizen
2022-05-12 10:50 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-02 18:24 ` [bug#55227] [PATCH core-updates 8/8] doc: Add the "Full Source Bootstrap" Jan (janneke) Nieuwenhuizen
2022-05-12 11:03 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-12 10:38 ` Ludovic Courtès
2022-05-13 8:08 ` Jan Nieuwenhuizen
2022-05-22 4:42 ` [bug#55227] [PATCH core-updates 1/8] commencement: Add bootstrap-seeds Maxim Cournoyer
2022-05-22 6:05 ` Jan Nieuwenhuizen
2022-05-12 11:09 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-13 8:07 ` Jan Nieuwenhuizen
2022-05-13 8:09 ` Jan Nieuwenhuizen
2022-05-13 8:09 ` Jan Nieuwenhuizen
2022-05-13 8:09 ` Jan Nieuwenhuizen
2022-05-13 8:09 ` Jan Nieuwenhuizen
2022-05-13 13:56 ` Ludovic Courtès
2022-05-13 15:39 ` Jan Nieuwenhuizen
2022-05-13 8:10 ` Jan Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 1/8] gnu: commencement: Add bootstrap-seeds Jan (janneke) Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 2/8] gnu: commencement: Add stage0-posix Jan (janneke) Nieuwenhuizen
2022-05-14 14:09 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-15 6:31 ` Jan Nieuwenhuizen [this message]
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 3/8] gnu: commencement: mes-boot: Update to 0.24, build with M2-Planet Jan (janneke) Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 4/8] gnu: commencement: tcc-boot0: Use nyacc-1.00.2 Jan (janneke) Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 5/8] gnu: commencement: tcc-boot0: Update to 0.9.26-1136-g0fbeb2dd Jan (janneke) Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 6/8] gnu: bootstrap: Remove %bootstrap-mescc-tools, %bootstrap-mes Jan (janneke) Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 7/8] gnu: commencement: Remove %bootstrap-mes-rewired Jan (janneke) Nieuwenhuizen
2022-05-13 15:36 ` [bug#55227] [PATCH core-updates v3 8/8] doc: Add the "Full-source Bootstrap" Jan (janneke) Nieuwenhuizen
2022-05-14 14:10 ` [bug#55227] [PATCH core-updates 0/8] The Full Source Bootstrap Ludovic Courtès
2022-05-14 20:36 ` Jan Nieuwenhuizen
2022-05-14 14:11 ` Ludovic Courtès
2022-05-14 20:38 ` Jan Nieuwenhuizen
2022-05-16 4:58 ` Maxim Cournoyer
2022-05-16 5:17 ` Jan Nieuwenhuizen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87tu9rqpcc.fsf@gnu.org \
--to=janneke@gnu.org \
--cc=55227@debbugs.gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.