From debbugs-submit-bounces@debbugs.gnu.org Sun May 15 02:31:35 2022 Received: (at 55227) by debbugs.gnu.org; 15 May 2022 06:31:35 +0000 Received: from localhost ([127.0.0.1]:48414 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nq7mq-0006TF-NM for submit@debbugs.gnu.org; Sun, 15 May 2022 02:31:35 -0400 Received: from eggs.gnu.org ([209.51.188.92]:34076) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nq7mp-0006T3-1m for 55227@debbugs.gnu.org; Sun, 15 May 2022 02:31:27 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:43514) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nq7mi-0005c1-QD; Sun, 15 May 2022 02:31:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=IjO/tKAPt2P6SwZqgZTlRSDL7CLXO/qHxLN2I5FTeB0=; b=NVJMBezbFEw121tMuyNN H+cSB/Qsaq+u/PnzRwGp3mBwyYYbLcYajiNzxOPU/xHvf55eIyodeRsRckqgDi6ChVmq/8Z6+plga 6Ko+GbsJl8I0cGFoIayqLWVBynuwxcazSsVuj02amSZgnh5zHv1hkzGPMdFZzB95tfmsbasbS38Zh u9tNj9OXklOc+wrNnhGS1EaR3ZBGtFE/1xdLtkJNiJGQ6rzxIpiWjKLHfUk9HA499EXbIo1MZLJBx l4iCZSAfZW0jjlLrtdKcDaNsDbEWC5vehHRfm9XcZpFP+hWHwd7J6PeWqjIpG73KHz04emXn0cGiO M2fMN96FHiO1gQ==; Received: from 2a02-a462-da03-1-cf41-23bd-7156-6a6c.fixed6.kpn.net ([2a02:a462:da03:1:cf41:23bd:7156:6a6c]:52784 helo=drakenpad.janneke.lilypond.org) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nq7mh-00086z-19; Sun, 15 May 2022 02:31:20 -0400 From: Jan Nieuwenhuizen To: Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: bug#55227: [PATCH core-updates 0/8] The Full Source Bootstrap Organization: AvatarAcademy.nl References: <20220513153631.13052-1-janneke@gnu.org> <20220513153631.13052-2-janneke@gnu.org> <87a6bkgq9u.fsf_-_@gnu.org> X-Url: http://AvatarAcademy.nl Date: Sun, 15 May 2022 08:31:15 +0200 In-Reply-To: <87a6bkgq9u.fsf_-_@gnu.org> ("Ludovic =?utf-8?Q?Court=C3=A8s?= =?utf-8?Q?=22's?= message of "Sat, 14 May 2022 16:09:01 +0200") Message-ID: <87tu9rqpcc.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 55227 Cc: 55227@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: Hey > "Jan (janneke) Nieuwenhuizen" skribis: > >> Stage0-posix is a skeleton for bootstrapping all of Stage0 for POSIX sys= tems. >> On x86-linux, from the 357-byte hex0-seed binary from the bootstrap-seed= s, 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 =E2=80=A6) expressions, alon= g 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 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-gnu-commencement-bootstrap-seeds-Use-new-package-sty.patch From 02874b2a43a6255c83d67d40c88742b2a4234c27 Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" 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 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-commencement-stage0-posix-Use-new-package-style.patch From f99f4a2257ceaf3b555e284d241d897da43b2868 Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" 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 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-commencement-mes-boot-Use-new-package-style.patch From 89a8bd925774911f225713de6bf2e4c94319b640 Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" 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 --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable --=20 Jan Nieuwenhuizen | GNU LilyPond https://lilypond.org Freelance IT https://JoyOfSource.com | Avatar=C2=AE https://AvatarAcademy.c= om --=-=-=--