binutils Newspaper
JULY 29, 2026
bfd Proposed

bfd: recognize *-*-windows* Windows targets

Reviewer questions if a patch to recognize Windows targets in BFD breaks existing build configurations for 'ld'.

A patch aims to improve BFD’s recognition of Windows targets within the GNU toolchain. A reviewer raises concern about potential build breakage for the linker (ld), questioning if the proposed change might cause it to be configured or built when it should not be for these targets. The reviewer suggests a proper way to handle unsupported subdirectories if breakage occurs.

In the Thread 2 participants
  1. Maciej W. Rozycki <macro@orcam.me.uk> reviewer

    Questions if the patch breaks 'ld' compilation on Windows targets when not explicitly disabled, suggesting that unsupported subdirectories should be handled by preventing configuration rather than by breaking compilation.

    “Does it break compilation then where no explicit `--disable-ld' has been given? If so, then it's a no-no, cf. commit 58d798318c42 ("AMDGCN: Disable subdirectory configuration for unsupported GAS and LD") for the right way to handle it.”
  2. Pedro Alves other

    Indicates that `ld` currently fails with a "does not support target" error for these Windows configurations and that users often disable `ld` during configuration.

Technical Tradeoffs

  • The tradeoff is between improving target recognition for Windows and ensuring that existing build configurations, particularly for `ld`, are not broken.

In Details

This discussion concerns the GNU Binutils collection, specifically the Binary File Descriptor (BFD) library and the linker (ld). The patch aims to improve target configuration for Windows platforms. The core issue is ensuring that unrecognized Windows targets within BFD do not inadvertently cause ld to be configured or built, potentially leading to build failures or incorrect configurations.

For Context
BFD
Binary File Descriptor library, a low-level library used by GNU binutils for manipulating object file formats.
ld
The GNU linker, responsible for combining object files into executables or libraries.
configure
The process of adapting generic source code to a specific operating system and hardware environment.
Filed Under: binutilsbfdldwindowstarget-configuration