--- Begin Message ---
Subject: |
[PATCH 0/5] Cross-compiler fixes |
Date: |
Mon, 22 May 2017 15:55:31 +0200 |
Hi Guix,
my goal here was to get a working C++ cross-compiler for arm-none-eabi (for
the Axoloti audio board). While doing this I remembered that
"gcc-arm-none-eabi-4.9" was using "%xgcc" (which happens to be gcc-5) instead
of "gcc-4.9" because of the way that "cross-gcc" works.
The first few patches change "cross-gcc" and its users such that a xgcc
argument can be supplied (it defaults to %xgcc). With that out of the way I
built libstdc++ for arm-none-eabi and added it to the arm-none-eabi-toolchain.
I also changed the toolchain package to present the union of all inputs at the
output. That makes it much nicer for other packages to use the toolchain as
an input, because it actually contains files.
I have already successfully built the Axoloti firmware with the new toolchain,
and I'm preparing a patch set to finally add it (and the Java patcher UI) to
Guix proper.
Ricardo Wurmus (5):
gnu: Allow overriding of xgcc package in cross-gcc.
gnu: avr-gcc-4.9: Use gcc-4.9 as base compiler.
gnu: Add libstdc++-arm-none-eabi.
gnu: arm-none-eabi-toolchain: Provide union of all inputs at the
output.
gnu: arm-none-eabi-toolchain: Include libstdc++.
gnu/packages/avr.scm | 4 ++--
gnu/packages/cross-base.scm | 28 ++++++++++++++++------------
gnu/packages/embedded.scm | 43 +++++++++++++++++++++++++++++++++++++++----
3 files changed, 57 insertions(+), 18 deletions(-)
--
2.12.2
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#27018: [PATCH 1/5] gnu: Allow overriding of xgcc package in cross-gcc. |
Date: |
Wed, 24 May 2017 23:29:02 +0200 |
User-agent: |
mu4e 0.9.18; emacs 25.2.1 |
Danny Milosavljevic <address@hidden> writes:
> Hi Ricardo,
>
> On Mon, 22 May 2017 16:13:15 +0200
> Ricardo Wurmus <address@hidden> wrote:
>
>> (define* (cross-gcc target
>> - #:optional (xbinutils (cross-binutils target)) libc)
>> + #:key
>> + (xgcc %xgcc)
>> + (xbinutils (cross-binutils target))
>> + (libc #f))
>
> Why is it "xgcc", "xbinutils", but "libc" (no "x")? Aren't they all the
> "cross" versions?
I don’t really know, but I assumed that it is because the libc is not a
set of cross-build tools but a library.
Anyway, thanks for the review. I’m going to push this now.
--
Ricardo
GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
https://elephly.net
--- End Message ---