Since the cris port was added to gcc it has passed --em=criself to gas, as an abbreviation for --emulation=criself. Starting with binutils-2.45 that causes a hard error in gas due to ambiguity with another option.
Fixed by replacing the abbreviation with the complete option. Tested by building a cross to cris-elf with binutils-2.45, which failed before but now succeeds. gcc/ PR target/121336 * config/cris/cris.h: Do not abbreviate --emulation. Signed-off-by: Mikael Pettersson <mikpeli...@gmail.com> --- Note: I do not have commit rights to gcc, so if this is approved I'll need help to get it committed. gcc/config/cris/cris.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h index 1681c79e24d..f35667949c1 100644 --- a/gcc/config/cris/cris.h +++ b/gcc/config/cris/cris.h @@ -171,7 +171,7 @@ extern int cris_cpu_version; /* For the cris-*-elf subtarget. */ #define CRIS_ASM_SUBTARGET_SPEC \ - "--em=criself %{!march=*:%{!mcpu=*:" CRIS_DEFAULT_ASM_ARCH_OPTION "}}" + "--emulation=criself %{!march=*:%{!mcpu=*:" CRIS_DEFAULT_ASM_ARCH_OPTION "}}" /* FIXME: We should propagate the -melf option to make the criself "emulation" unless a linker script is provided (-T*), but I don't know -- 2.50.1