From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id EIUfFGFwDGQ6xwAASxT56A (envelope-from ) for ; Sat, 11 Mar 2023 13:13:21 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id MEQiFGFwDGQHkgAA9RJhRA (envelope-from ) for ; Sat, 11 Mar 2023 13:13:21 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 09155E082 for ; Sat, 11 Mar 2023 13:13:20 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pay5w-0006sg-9Q; Sat, 11 Mar 2023 07:13:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pay5v-0006sU-6W for guix-patches@gnu.org; Sat, 11 Mar 2023 07:13:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pay5u-0008Cm-OS for guix-patches@gnu.org; Sat, 11 Mar 2023 07:13:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pay5u-0006Lu-J1 for guix-patches@gnu.org; Sat, 11 Mar 2023 07:13:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#61765] custom toolchain blog post Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 11 Mar 2023 12:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61765 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Mitchell Schmeisser Cc: 61765@debbugs.gnu.org Received: via spool by 61765-submit@debbugs.gnu.org id=B61765.167853672724285 (code B ref 61765); Sat, 11 Mar 2023 12:13:02 +0000 Received: (at 61765) by debbugs.gnu.org; 11 Mar 2023 12:12:07 +0000 Received: from localhost ([127.0.0.1]:56705 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pay50-0006Jc-PS for submit@debbugs.gnu.org; Sat, 11 Mar 2023 07:12:07 -0500 Received: from eggs.gnu.org ([209.51.188.92]:43146) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pay4y-0006Ik-Ce for 61765@debbugs.gnu.org; Sat, 11 Mar 2023 07:12:04 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pay4s-00087X-Mr; Sat, 11 Mar 2023 07:11:58 -0500 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=1XYzJ/74Yn+BB7fAh5PLTRCuG/RiZQjDdIY2Xp3HvDo=; b=rU77wIu5o9mkCc9eePLi dL4nJqOdXBf47UbYEPCnBCVD1dBbaRsVy3W+586uyop0kzHeY7FHEaaXs8P2LQfJOm7MadDguAy5g gGNRWzlHwec/pCdlx8JhuMrc5O7L8ORbs8l8szSkKsoma2FY5NCcn20GtcSdzSDy+KL9aeZyHJAle TLB9AkT2gtOfUKTzNSTd+PATCrTwGKo+cZGMER5FnHXvjDFyaxRE2/+d1TOl8EqW4LHeQ7wcqp4CG vsH744q837QJX3p6TU1rcJKgDBW0qXgDTgv4VUzIIs/7yF8rPuf/MBZkaoBSiHFzolY3X6Kroqqds XlBNYPuaQqX71w==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201] helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pay4s-0007aA-AC; Sat, 11 Mar 2023 07:11:58 -0500 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <87sfeuucab.fsf@librem.one> <87fsarmfw6.fsf@gnu.org> <87k003xgs0.fsf@librem.one> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: Primidi 21 =?UTF-8?Q?Vent=C3=B4se?= an 231 de la =?UTF-8?Q?R=C3=A9volution,?= jour de la Mandragore X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sat, 11 Mar 2023 13:11:55 +0100 In-Reply-To: <87k003xgs0.fsf@librem.one> (Mitchell Schmeisser's message of "Mon, 27 Feb 2023 10:35:43 -0500") Message-ID: <87zg8jwkqc.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=rU77wIu5; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Seal: i=1; s=key1; d=yhetil.org; t=1678536801; a=rsa-sha256; cv=none; b=XmfMnF6LFzHYyl/aldCi7prf5Jq/+O2L6K0xKhqNlA1fF1lTU4Abz2TABjVuu2PumXKkmz cCsP/1luEfo7iCwCtnC6A6a8mWunsCeagXmvnbVAq+ogClt+x4l3dSCFiQgGc8qeJu3/gD ttg2rk6tNnQqGhABoxNDWpQ9JEFpv+SeHLaegUhVrT0O84f8GjYA6JQaDV6RymH7ImANdX CqMYxbhRgwLAJqlI6m54+3keaGFPKYbLYcjIuxNWWsnFUhPt70pEoupz2QU7aUvTcSAabq xuwJkI//G7gvTRqj3ZD7WQTAt0W+4ebOAWy/iWro44LIRx6HOoa825duqKuLaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1678536801; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=1XYzJ/74Yn+BB7fAh5PLTRCuG/RiZQjDdIY2Xp3HvDo=; b=Pto6mgNVdRGXrnJUAHcnny0dEQzpMv5EOm5iGvC0P/0ZCI6zulyvgn7iS6WvvSf187R1o1 RDRVJHGmlD2Gt0g/6hd0EaYMk1XmprCK0h7q1xILvPyUsiNG/3CGXdjLjPmPUSbBg3i5Dj V4uHks9ANa1SAUBrh2pwJKCNvBjB4GW2XBzOSzTngmrm8pqtANvQUD8Tygl6JK285ckVbR GbffSM3+T4u8zMYQkBMtH/wmNOxobEA+uWsOXx6cnqfnuxrcZdjUeYxB9qKCvgXm0FshGV E7o4Ji/FtiBx95ReVFzhgUJ672+lUjEI/ieuq/bIudHFeTz0x/ISuBmdJjsuQA== X-Migadu-Spam-Score: -4.10 X-Spam-Score: -4.10 X-Migadu-Queue-Id: 09155E082 X-Migadu-Scanner: scn1.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=rU77wIu5; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org X-TUID: /vAtvQfEWt7x Hi Mitchel, (Please keep the issue Cc=E2=80=99d.) Apologies for the delay! Mitchell Schmeisser skribis: >> One thing that=E2=80=99s not clear to me: with this in place, can you do= =E2=80=9Cguix >> build --target=3Darm-zephyr-eabi hello=E2=80=9D, for instance? If not, = what=E2=80=99s >> missing to support it? > > You cannot. I do not know how to describe it in a succinct way but > suffice to say the applications need to know they are targeting Zephyr > when they are written. The application will include a `prj.conf` which > is analogous to a custom defconfig in the Linux kernel. > Either in this file, or somewhere in the CMakeLists.txt a `BOARD` > variable is set to specify a specific board definition. > These board definitions contain information about the architecture and > the CMake scripts themselves pick the toolchain. > > It's not that it's impossible to implement something like `guix build > --target=3Darm-zephyr-eabi k64f-hello-world` but the k64f-hello-world > would be written in such a way that the target is implicit in the > package. OK. To put it differently, a typical POSIX program won=E2=80=99t work on Zephyr; programs have to target the Zephyr interfaces, right? > The way I envision the `--target/system` flags being used in this > context is `guix build --target=3Darm-linux-gnueabihf k64f-hello-world` > which will still produce the correct firmware but will allow the > firmware to be staged to another machine which will be responsible for > the final deployment over some transport. Or rather: guix build --target=3Darm-zephyr-eabi k64f-hello-world ? >> I wonder if it would be worth mentioning >> too, and how >> one would go about adding a module. WDYT? > > I considered trying to add Zephyr platforms but I'm not sure it's worth > the effort. > In addition to the patch to the website I attached another post(in org) > which describes how I integrated this toolchain into the Guix > infrastructure to allow defining firmware packages. > Maybe there will be additional information in there which can help you > understand where I'm going with all of this. > > There will be a part 3 (and possibly more) about how to practically use > this stuff in a real project. Woow. :-) > From 0920ec7d951354c94c3da277d58e54b587522622 Mon Sep 17 00:00:00 2001 > From: Mitchell Schmeisser > Date: Mon, 27 Feb 2023 10:20:32 -0500 > Subject: [PATCH] website: Add toolchain blog post > > website/blog/custom-toolchains-with-guix.md: New file I pushed it under the drafts directory for now, to leave others a bit more time to comment before we publish. I followed up with a commit editing things a bit, mostly fixing typographical issues, spelling/capitalization, code formatting, and removing tabs. https://git.savannah.gnu.org/cgit/guix/guix-artwork.git/tree/website/draf= ts/custom-toolchains-with-guix.md (BTW, I made slight modifications to some of the code snippets to! One package was using (append (list =E2=80=A6) (package-native-inputs =E2=80=A6= )), which really works =E2=80=9Cby chance=E2=80=9D I guess; you should use =E2=80=98m= odify-inputs=E2=80=99 instead.) Let me know if anything=E2=80=99s amiss! Thanks, Ludo=E2=80=99.