Since recently there has been a change to gdb package that introduced
configure-flags, three gdb packages broke, since they assumed there are no
configure-flags in gdb. That means they produced the same gdb as gdb-14.
This patche fixes that by ensuring configure-flags are appended to original package.
* gnu/packages/embedded.scm (make-gdb-arm-none-eabi)[arguments]: Append
configure-flags to original flags.
* gnu/packages/gdb.scm (gdb-multiarch)[arguments]: Likewise.
* gnu/packages/gdb.scm (avr-gdb)[arguments]: Likewise.
Signed-off-by: Janneke Nieuwenhuizen <janneke@gnu.org>
Change-Id: Ia8748b86dc72197bd4eef307d091b6af44fc5611
The nano variant for was not nano. It was just a copy of the original
one with different name. This meant there were no _nano.a files present
at all, and the flags were the same, not producing a smaller library.
* gnu/packages/embedded.scm (make-base-newlib-arm-none-eabi-7-2018-q2-update):
Rename variable from make-newlib-arm-none-eabi-7-2018-q2-update.
* gnu/packages/embedded.scm (make-newlib-nano-arm-none-eabi-7-2018-q2-update):
Add variable.
* gnu/packages/embedded.scm (make-newlib-arm-none-eabi-7-2018-q2-update):
Inherit from make-base-newlib-arm-none-eabi-7-2018-q2-update.
Change-Id: I01517ed860dfb2b6a9c7e912fd724832f5a0500a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
The arm-none-eabi nano toolchain had same libstdc++ as the non-nano variant.
The libstdc++ should be compiled with -fno-exceptions to make a nano
toolchain.
Additionally, since the "_nano.a" variants were not present, it was impossible
to compile C++ programs with libstdc++ using --specs=nano.specs,
since libstdc++_nano.a was not found.
The `--with-target-subdir="."` flag is a preparation for gcc-12 introduction
since the libstdc++ doesn't build without that, failing on GCC_NO_EXECUTABLES
error in configure stage. I have not been able to find out another workaround.
* gnu/packages/embedded.scm (make-libstdc++-arm-none-eabi):
[arguments]<#:make-flags>: Add CFLAGS and CXXFLAGS.
[arguments]<#:configure-flags>: Add --with-target-subdir.
* gnu/packages/embedded.scm (make-libstdc++-nano-arm-none-eabi): Add variable.
Change-Id: I06a507fef07352a4ec80d84e4d97065343fc2295
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
The libstdc++ made for arm-none-eabi puts the contents
into "lib" folder, but that's unexpected when the resulting
toolchain is a cross toolchain.
The folder should be "arm-none-eabi/lib", that's the path
added to CROSS_C_LIBRARY_PATH
* gnu/packages/embedded.scm (make-libstdc++-arm-none-eabi):
[arguments]<#:configure-flags>: Point --libdir to arm-none-eabi/lib.
[arguments]<#:strip-directories>: Set to arm-none-eabi/lib.
Change-Id: Ia8b867a1c6ebeedeae9564e0a6a1e0401b35bd5b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This fixes native-search-paths of arm-none-eabi toolchains
The toolchains CROSS_CPLUS_INCLUDE_PATH had C include directory
first, and the C++ as second. Since <cstdlib> does #include_next <stdlib.h>,
the toolchains could not build anything using <cstdlib>. The C include
has to come later than C++ one. This is already fixed in xgcc search-path.
* gnu/packages/embedded.scm (make-gcc-arm-none-eabi-4.9,
make-gcc-arm-none-eabi-7-2018-q2-update): [native-search-paths]: Put C include
path as last.
Change-Id: Ib7e36e57e510ac87960375cad40ff0b9e749101c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This is the result of applying ‘guix style -S arguments’ and making
small adjustments.
* gnu/packages/base.scm (binutils)[arguments]: Use gexps.
(binutils-2.33, binutils-gold): Likewise.
* gnu/packages/commencement.scm (binutils-mesboot0, binutils-mesboot1)
(binutils-boot0, binutils-final): Likewise.
* gnu/packages/cross-base.scm (cross-binutils*): Adjust accordingly.
* gnu/packages/embedded.scm (make-propeller-binutils): Use gexps.
* gnu/packages/make-bootstrap.scm (%binutils-static): Use gexps.
Change-Id: I59cbe29760784b09e6d4e80beca9153cb9b495a7
* gnu/packages/embedded.scm (sdcc): Update to 4.4.0.
* gnu/packages/patches/sdcc-disable-non-free-code.patch: Update to match new
version.
Change-Id: Ie35c590a7f3004bc9f081d99b7ce019ac66cf3c0
Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
This can in some cases hide the real error with errors such as:
error: base:which: unbound variable
* gnu/packages/embedded.scm (openocd) [native-inputs]: Replace base:which with
which.
(binutils-vc4): Likewise.
(python-libmpsse): Likewise.
* gnu/packages/embedded.scm (sdcc): Update to 4.3.0.
* gnu/packages/patches/sdcc-disable-non-free-code.patch: Update to match new
version.
Signed-off-by: Christopher Baines <mail@cbaines.net>
* gnu/packages/embedded.scm (sdcc)[source]<snippet>: Use gexp; drop
trailing #t.
[arguments]: Use gexps.
<#:phases>: Drop trailing #t from phase.
Signed-off-by: Christopher Baines <mail@cbaines.net>
* gnu/packages/embedded.scm (openocd): Update to 0.12.0.
[inputs]: Remove libusb-compat as openocd dropped support for libusb0.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
* gnu/packages/embedded (jimtcl): Update to 0.82.
[arguments]: Use G-Expressions and update failing test, TTY test doesn't
fail anymore.
[inputs]: Add openssl as an input as now by default jimtcl enables the
SSL configuration option.
* gnu/packages/embedded (openocd): Support jimtcl 0.82.
[arguments]: Link against libssl and libcrypto.
[inputs]: Add openssl.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
* gnu/packages/embedded.scm (gcc-arm-none-eabi-7-2018-q2-update)[arguments]:
Use G-expressions, just like the xgcc package; also remove trailing #T from
build phases.
This change is necessary because the parent xgcc package uses G-expressions
for configure flags and phases.
* gnu/packages/embedded.scm (gcc-arm-none-eabi-4.9)[arguments]: Use
G-expressions; also remove trailing #T.
* gnu/packages/patches/gcc-4.9-inline.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/embedded.scm (gcc-arm-none-eabi-4.9)[source]: Use it.
None of the patches seem to apply. The patches that are not used with binutils
are probably too new for the specific commit used here, and the patches that
were once applied have probably been removed, so just don't apply any patches.
* gnu/packages/embedded.scm (propeller-binutils)[source]: Remove patches that
don't apply.
* gnu/packages/embedded.scm (ucsim): Update to 0.7.1.
[source]: Update URI.
[arguments]<#:configure-flags>: Remove as all stable ports are now built by
default.
<#:phases>: Remove obsolete "remove-empty-directory" phase.
[inputs]: Add ncurses, needed for the serialview utility.
[native-inputs]: Add sdcc when needed for tests.
[description]: Update to mention newly supported microcontroller families.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/embedded.scm (sdcc): Update to 4.2.0.
[description]: Update to mention the newly supported MOS 6502.
* gnu/packages/patches/sdcc-disable-non-free-code.patch: Update to match new
version.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>