unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: Jean-Pierre De Jesus DIAZ <jean@foundationdevices.com>
Cc: 66263@debbugs.gnu.org, vagrant@debian.org, efraim@flashner.co.il
Subject: [bug#66263] [PATCH 00/23] guix: Add avr as a platform.
Date: Thu, 05 Oct 2023 00:34:36 -0400	[thread overview]
Message-ID: <8734yp1ycj.fsf_-_@gmail.com> (raw)
In-Reply-To: <20230929091627.7820-9-jean@foundationdevices.com> (Jean-Pierre De Jesus DIAZ's message of "Fri, 29 Sep 2023 11:16:13 +0200")

Hi,

Jean-Pierre De Jesus DIAZ <jean@foundationdevices.com> writes:

> * gnu/packages/cross-toolchain.scm (make-cross-gcc-toolchain): New
>   procedure.

You forgot to mention the registration of the new module in the local.mk
file.

[...]

> +++ b/gnu/packages/cross-toolchain.scm
> @@ -0,0 +1,58 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages cross-toolchain)
> +  #:use-module (gnu packages avr)
> +  #:use-module (gnu packages cross-base)
> +  #:use-module (guix build-system trivial)
> +  #:use-module (guix packages)
> +  #:use-module (srfi srfi-1)
> +  #:export (make-cross-gcc-toolchain))


I'm a bit confused; why do we need this new module; couldn't it live in
(gnu packages cross-base)?  Also, there are extraneous imports: (gnu packages
avr) is not needed for one.  With a recent Guile you can check for such
imports with

--8<---------------cut here---------------start------------->8---
guild compile -W3 your-file.scm
--8<---------------cut here---------------end--------------->8---

> +(define* (make-cross-gcc-toolchain target
> +                                   #:key
> +                                   (libc (cross-libc target))
> +                                   (xgcc (cross-gcc target #:libc libc))
> +                                   (xbinutils (cross-binutils target)))

Please add a doc string, and memoize packages returning procedures like
this one.

> +  (package
> +    (name (string-append (package-name xgcc) "-toolchain"))
> +    (version (package-version xgcc))
> +    (source #f)
> +    (build-system trivial-build-system)
> +    (arguments
> +     '(#:modules ((guix build union))
> +       #:builder (begin
> +         (use-modules (ice-9 match)
> +                      (guix build union))

This will work as long as all the file names are ASCII only, as there's
no locale support in the trivial-build-system.  I guess this is not a
problem here, but just mentioning it, as it bit me in the past.

-- 
Thanks,
Maxim




  parent reply	other threads:[~2023-10-05  4:36 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-29  9:13 [bug#66263] [PATCH 00/23] guix: Add avr as a platform Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-09-29  9:16 ` [bug#66263] [PATCH 01/23] gnu: cross-libc: Return #f if no libc available Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-09-29  9:16   ` [bug#66263] [PATCH 02/23] guix: gnu: Handle platforms without libc Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-09-29  9:16   ` [bug#66263] [PATCH 03/23] gnu: Add avr platform Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-09-29  9:16   ` [bug#66263] [PATCH 04/23] guix: utils: Add target-avr? Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-04 14:07     ` Efraim Flashner
2023-09-29  9:16   ` [bug#66263] [PATCH 05/23] gnu: cross-gcc: Enable multilib for avr Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05  4:15     ` [bug#66263] [PATCH 00/23] guix: Add avr as a platform Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 06/23] gnu: microscheme: Move to avr-xyz Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-04 14:07     ` Efraim Flashner
2023-10-05  4:19     ` [bug#66263] [PATCH 00/23] guix: Add avr as a platform Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 07/23] gnu: Add AVR phases to cross-gcc-build-phases Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-09-29  9:16   ` [bug#66263] [PATCH 08/23] gnu: avr-libc: Convert to procedure Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05  4:17     ` [bug#66263] [PATCH 00/23] guix: Add avr as a platform Maxim Cournoyer
2023-10-05  4:23     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 09/23] gnu: Add make-cross-gcc-toolchain Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-04 14:07     ` Efraim Flashner
2023-10-05  4:34     ` Maxim Cournoyer [this message]
2023-09-29  9:16   ` [bug#66263] [PATCH 10/23] gnu: Add binutils-cross-avr Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 14:46     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 11/23] gnu: avr-binutils: Deprecate package Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 14:48     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 12/23] gnu: Remove various AVR packages Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 14:51     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 13/23] gnu: cross-libc: Add AVR Libc case Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 14:52     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 14/23] gnu: cross-gcc-arguments: Handle AVR target Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 14:59     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 15/23] guix: meson-configuration: Fix boolean assigment Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:00     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 16/23] gnu: cross-gcc-search-paths: Handle AVR target Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:08     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 17/23] gnu: cross-gcc: Handle inputs for AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:08     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 18/23] gnu: Add avr-libc Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:10     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 19/23] gnu: Add gcc-cross-avr-toolchain Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:11     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 20/23] gnu: Add avr-toolchain Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-09-29  9:16   ` [bug#66263] [PATCH 21/23] guix: meson-build-system: Support AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:13     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 22/23] guix: meson-build-system: Disable PIC for AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:14     ` Maxim Cournoyer
2023-09-29  9:16   ` [bug#66263] [PATCH 23/23] gnu: Add unity Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-10-05 15:19     ` Maxim Cournoyer
2023-09-29  9:18 ` [bug#66263] [PATCH 00/23] guix: Add avr as a platform Jean-Pierre De Jesus Diaz via Guix-patches via
2023-10-04 13:01 ` Mathieu Othacehe
2023-10-05 15:20   ` Maxim Cournoyer
2023-12-06 21:57     ` Ludovic Courtès
2023-11-28 11:34 ` [bug#66263] [PATCH v1 01/22] gnu: cross-libc: Return #f if no libc available Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 02/22] guix: gnu-build-system: Handle missing libc Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 03/22] guix: Add avr platform Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 04/22] guix: Add target-avr? Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 05/22] gnu: microscheme: Move to avr-xyz Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 06/22] gnu: make-avr-libc: Fix synopsis Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 07/22] gnu: cross-gcc: Enable multilib for AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 08/22] gnu: cross-gcc: Handle target include paths Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 09/22] gnu: cross-libc: Add AVR Libc support Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 10/22] gnu: cross-gcc: Handle AVR inputs Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 11/22] gnu: cross-toolchain: Add set-cross-path for AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 12/22] gnu: cross-gcc: Find AVR Libc files Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 13/22] gnu: cross-gcc: Only C and C++ for AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 14/22] guix: meson-build-system: Support AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 15/22] guix: meson-build-system: Disable PIC for AVR Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:34 ` [bug#66263] [PATCH v1 16/22] gnu: Add cross-gcc-toolchain procedure Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:35 ` [bug#66263] [PATCH v1 17/22] gnu: Add gcc-cross-avr-toolchain Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:35 ` [bug#66263] [PATCH v1 18/22] gnu: make-ergodox-firmware: Use AVR target Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:35 ` [bug#66263] [PATCH v1 19/22] gnu: make-qmk-firmware: " Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:35 ` [bug#66263] [PATCH v1 20/22] gnu: lufa: " Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:35 ` [bug#66263] [PATCH v1 21/22] gnu: Add gcc-cross-i686-w64-mingw32-toolchain Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:35 ` [bug#66263] [PATCH v1 22/22] gnu: Add gcc-cross-x86_64-w64-mingw32-toolchain Jean-Pierre De Jesus DIAZ via Guix-patches via
2023-11-28 11:50 ` [bug#66263] Updated patch series Jean-Pierre De Jesus Diaz via Guix-patches via
2023-12-11 11:58   ` bug#66263: " Efraim Flashner
2023-12-11 12:30     ` [bug#66263] " Jean-Pierre De Jesus Diaz via Guix-patches via

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

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8734yp1ycj.fsf_-_@gmail.com \
    --to=maxim.cournoyer@gmail.com \
    --cc=66263@debbugs.gnu.org \
    --cc=efraim@flashner.co.il \
    --cc=jean@foundationdevices.com \
    --cc=vagrant@debian.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 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).