- Package:
- binutils-embedded
- Source:
- binutils-embedded
- Submitter:
- Sean Anderson
- Date:
- 2026-09-09 20:37:02 UTC
- Severity:
- normal
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.
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
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-----
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- ?
"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.
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.
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.
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.