#1146538#5
Date:
2026-09-02 20:21:17 UTC
From:
To:
Please add support for MSP430 processors to this package. There was a previous
attempt to package TI's binutils package (itself based on GNU binutils) as
binutils-msp430, but that ended up getting removed due to inactivity regarding
#1042343. I believe this package is the best candidate to add binutils for the
MSP430, as upstream GNU binutils works fine for this platform without any
modifications.

#1146538#12
Date:
2026-09-04 21:31:12 UTC
From:
To:
The Debian NEW review of binutils-embedded 29 has been completed.

Decision: ACCEPTED
Reviewer: Andrew McMillan

Review comment:

Hi,

If you could update the debian/copyright into DEP-5 format that would be appreciated.

Here's a suggestion for that...

=========================================================================
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: binutils
Source:
 ftp://ftp.gnu.org/pub/gnu/binutils/
 cvs://:pserver:anoncvs@sources.redhat.com:/cvs/src

Files: *
Copyright: 1990-2025 Free Software Foundation, Inc.
License: GPL-3+

Files: debian/*
Copyright:
 James Troup <james@nocrew.org>
 Christopher C. Chimelis <chris@debian.org>
 Keith Packard <keithp@debian.org>
License: GPL-3+

Files: doc/* man/* *.texi *.info
Copyright: Free Software Foundation, Inc.
License: GFDL-1.3+

License: GPL-3+
 This program 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.
 .
 This program 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 this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
 MA 02110-1301, USA.
 .
 On Debian GNU/Linux systems, the complete text of the GNU General
 Public License version 3 can be found in `/usr/share/common-licenses/GPL-3'.

License: GFDL-1.3+
 Distributed under the GNU Free Documentation License Version 1.3 or any
 later version published by the Free Software Foundation, with no Invariant
 Sections, with no Front-Cover Texts, and with no Back-Cover Texts.
 .
 On Debian GNU/Linux systems, the complete text of the GFDL version 1.3
 can be found in `/usr/share/common-licenses/GFDL-1.3'.
=======================================================================

Thanks!

Full review details: https://dfsg-new-queue.debian.org/reviews/binutils-embedded

#1146538#17
Date:
2026-09-04 22:00:23 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
binutils-embedded, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1146538@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Keith Packard <keithp@keithp.com> (supplier of updated binutils-embedded package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Wed, 02 Sep 2026 22:21:48 -0700
Source: binutils-embedded
Binary: binutils-aarch64-none-elf binutils-aarch64-none-elf-dbgsym binutils-arm-none-eabi binutils-arm-none-eabi-dbgsym binutils-msp430-unknown-elf binutils-msp430-unknown-elf-dbgsym binutils-riscv64-unknown-elf binutils-riscv64-unknown-elf-dbgsym
Architecture: source amd64
Version: 29
Distribution: unstable
Urgency: medium
Maintainer: Keith Packard <keithp@keithp.com>
Changed-By: Keith Packard <keithp@keithp.com>
Description:
 binutils-aarch64-none-elf - GNU assembler, linker and binary utilities for 64-bit ARM process
 binutils-arm-none-eabi - GNU assembler, linker and binary utilities for ARM Cortex-R/M pro
 binutils-msp430-unknown-elf - GNU assembler, linker and binary utilities for MSP430 processors
 binutils-riscv64-unknown-elf - GNU assembler, linker and binary utilities for Risc-V processors
Closes: 1146538
Changes:
 binutils-embedded (29) unstable; urgency=medium
 .
   * Add msp430-unknown-elf target. Closes: #1146538.
Checksums-Sha1:
 952f00bd48eaaf380d6b62f83953c0ee0438ca24 2014 binutils-embedded_29.dsc
 cf08dfd890ec2cbfc5efb93a9352340671929442 4373 binutils-embedded_29.tar.gz
 d04eee2fa2819f12128786f2e4c9db1173feb658 46147164 binutils-aarch64-none-elf-dbgsym_2.47-2+29_amd64.deb
 8bdbebc694beaca329f548db4ea96404bbcfb99c 4168696 binutils-aarch64-none-elf_2.47-2+29_amd64.deb
 5c969141b1ccca0c8c082d9090208dc046ed0b82 35019684 binutils-arm-none-eabi-dbgsym_2.47-2+29_amd64.deb
 2aba10c34beb013b4b6039fb2ca04b8a1d3ba119 3126372 binutils-arm-none-eabi_2.47-2+29_amd64.deb
 750fd02f01786d2a2b2bd9c17a0c74169891b3a8 9778 binutils-embedded_29_amd64.buildinfo
 882605ca8e97902342f21e8dd650c4e16c1df32f 32144320 binutils-msp430-unknown-elf-dbgsym_2.47-2+29_amd64.deb
 9c1d9db0f26090bc45ffccf9e5d0d5e8873755cd 2784736 binutils-msp430-unknown-elf_2.47-2+29_amd64.deb
 092dd78fc90ae70d76c462544fe7998f9dc0106f 39162904 binutils-riscv64-unknown-elf-dbgsym_2.47-2+29_amd64.deb
 cb37d910fae69655e241cfdb3cd183d574d92581 3192604 binutils-riscv64-unknown-elf_2.47-2+29_amd64.deb
Checksums-Sha256:
 fd28b1fbd8da565759ac394788120cf6d93c36bb6888366dc35f8839bcc70e2e 2014 binutils-embedded_29.dsc
 7aa351bc3b38b169e1efcd4aaa77d3f412cce79ca1729c5481f3d8086c3a3db8 4373 binutils-embedded_29.tar.gz
 c5628d44434a4cbf2fad0f1a3e7ba7bda97444fcae778909591072489b7038bd 46147164 binutils-aarch64-none-elf-dbgsym_2.47-2+29_amd64.deb
 7c21c19f072d8a3442dedff8d4cad97f7d522dfdfb97e9000ee8fd7efe38e3ae 4168696 binutils-aarch64-none-elf_2.47-2+29_amd64.deb
 885926da1dc38455461efdcbdf2091af66901bc337e77599e7e00c8b46adc2b5 35019684 binutils-arm-none-eabi-dbgsym_2.47-2+29_amd64.deb
 a2cff6fffd86a0fc867ad7e7767e0e5a395b94b1ed1bcdf08769e80a21a4a047 3126372 binutils-arm-none-eabi_2.47-2+29_amd64.deb
 b6d4fbb509b2b2dcba979df146feff51665432a0216b8935a1804ded036ff9bf 9778 binutils-embedded_29_amd64.buildinfo
 218e5ceee1aab219c451bd29f576ca0f376b2ebf9f70cba7c1cd55293be0c2cb 32144320 binutils-msp430-unknown-elf-dbgsym_2.47-2+29_amd64.deb
 583bdd16426d58ef4f85dbb56c6251151f9288ea1aa03a83831a8f12a13e08aa 2784736 binutils-msp430-unknown-elf_2.47-2+29_amd64.deb
 f5e0dd7b4058d53c3e103fb480cfdfe9c8c739053da643bc6538b9b48e9ba27a 39162904 binutils-riscv64-unknown-elf-dbgsym_2.47-2+29_amd64.deb
 f4b4ce4f6f3bc2a49cee2db3e490d5a57d7bb2c11665062da2a9c20385b91b5d 3192604 binutils-riscv64-unknown-elf_2.47-2+29_amd64.deb
Files:
 8b79c54ef5b8f8e76afebbb53c67f0b3 2014 devel optional binutils-embedded_29.dsc
 09a8e654e36cf2b8dc20b6b3abd949ac 4373 devel optional binutils-embedded_29.tar.gz
 ceb3158cb6bc1fe889244db502107007 46147164 debug optional binutils-aarch64-none-elf-dbgsym_2.47-2+29_amd64.deb
 a6c1318a717207b6214a3ec9bc762e40 4168696 devel optional binutils-aarch64-none-elf_2.47-2+29_amd64.deb
 355c06b3e3e9d8f798d23a4f99af2696 35019684 debug optional binutils-arm-none-eabi-dbgsym_2.47-2+29_amd64.deb
 ef5e568e9ca6ccebb29d04167ba9ecd8 3126372 devel optional binutils-arm-none-eabi_2.47-2+29_amd64.deb
 2279864646dadee7d2e950b825b43bbc 9778 devel optional binutils-embedded_29_amd64.buildinfo
 047aeec7e43082e3c70d72756d7ea7aa 32144320 debug optional binutils-msp430-unknown-elf-dbgsym_2.47-2+29_amd64.deb
 d10eb83334f11c2586bb0b0547be1e71 2784736 devel optional binutils-msp430-unknown-elf_2.47-2+29_amd64.deb
 2ac2d8fb1e7e1ab0778da6dcc624842b 39162904 debug optional binutils-riscv64-unknown-elf-dbgsym_2.47-2+29_amd64.deb
 2aa0017a66a2f5406785826e9af2b452 3192604 devel optional binutils-riscv64-unknown-elf_2.47-2+29_amd64.deb
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEw4O3eCVWE9/bQJ2R2yIaaQAAABEFAmqZ/lAACgkQ2yIaaQAA
ABHQpA//diyLpZWBgnz70dFWJLq5W+SiWpz85YZ/iShfZTbbFgdc5CO4cqrxihZl
UKC5IyFelAIar1J26gIxGSzaFMLMEmEq0HDLlKXjW4hUsQaJBdZxHEUIjwTZOqoW
tvg0tWFWDlDVWjdHxSEv5QBe7tnRXAmfZVYgDluZ6nqBGk8sXbKt/oXcM7CtL6YA
RW6fbv+LlZgBcWwYfA5QXWouHkz9ailXE7t4fJj2uxNLNNsOy7hTHXGZNxYgeE+I
uJi85FDiQ/v/Epmd2QLzMhF1tvOMoJLVlVDF+/6uFPYRNB0yJSFHyJCyR4K6Cn2E
q7hw8Lygd5RTN+GSRLovTm7nrJSNYm5o9VoKAnlvyyOqR78vBCQ23nsNTw/qp9Sv
am1KasDuv+wN1U1aqu0ZQhzxrC63K+XiuD4rZ9RtX4zupZjtgMS86S6H+uSgRWbL
nsEl/g76FCH4sdrYJJ5/zNym+CK+jQ305DbV+GLA0GOZzseoty9AQBmU/1g/a0Lc
pFDhbWyM4CrzEc9CTJ3rPCIYMKTJhKNARxOlHcXCIxDzoeG8LVb+vjrMS7MrfUX8
f+FoOmgjY719b/dyuvUJo3LmegFza/+mJVlAekTeb8Vp1p4q4HcoLlNiGZrLOgIz
5eaqUPkCINRtK4T1RdtQ4DK/iGf2rCQ27JcURuH7iMeLVt835lo=
=Fag0
-----END PGP SIGNATURE-----

#1146538#22
Date:
2026-09-08 13:24:50 UTC
From:
To:
Hi Keith,

Thanks for adding msp430 support to binutils-embedded. I noticed that you used
msp430-unknown-elf as the triplet. It's my understanding that that expands to
msp430-unknown-unknown-elf. I've been using msp430-elf, following arch [1]. As
I understand it that expands to msp430-none-elf -> msp430-unknown-none-elf.
Rust also uses msp430-none-elf [2]. Any reason why you went with -unknown- over
-none- ?

#1146538#27
Date:
2026-09-08 18:45:37 UTC
From:
To:
"expands"? I'm not sure what would expand the name?

It could be msp430-none-elf instead, but that means 'no' OS, while
'unknown' means the underlying OS isn't specified, which seems more
accurate as this toolchain can be used with Zephyr, RIOT or FreeRTOS
quite effectively.

#1146538#32
Date:
2026-09-09 14:41:18 UTC
From:
To:
Hi Keith,

The full "triplet" has four elements:

arch-vendor-system-environment

Almost any of them may be omitted and the absent values will be filled in (usually
with "unknown"). Unfortunately, GCC does not do a particularly-good job at
documenting "triplets" (the best we get is [1]; cf. [2]).

That field is only for OSs with privilege separation (e.g. an ABI). Bare-metal RTOSs
are effectively libraries and usually do not require toolchain support. In cases where
they do (such as if the RTOS supports loadable modules), then they go in the final
position of the triplet (e.g. you could have arm-none-vxworks).

In particular, clang explicitly documents [3] that "none" should be used for
bare-metal systems.

#1146538#37
Date:
2026-09-09 18:48:58 UTC
From:
To:
Yeah, it's all quite fuzzy and ill-defined. llvm has strong ideas in
this area, as these values drive how the compiler configures itself,
while gcc doesn't care because the compiler is configured at build time
and the "triplet" ends up being irrelevant in practice.

I'm happy to use 'none' for the OS, following arm conventions instead of
the riscv convention if that makes integration with the llvm world
easier. That will involve another trip through the new queue, so we'll
need a bug report to motivate that adventure. Please go ahead and file
against binutils-msp430-unknown-elf requesting the name change.

#1146538#42
Date:
2026-09-09 20:35:34 UTC
From:
To:
Actually, I think clang wants the triple to be just msp430-elf. See
e.g. [1-3] where it is hard-coded. Which is odd considering rustc.