#1091544 Error: unknown mnemonic `endfunc' -- `endfunc' on arm64

Package:
binutils
Source:
binutils
Description:
GNU assembler, linker and binary utilities
Submitter:
Diederik de Haas
Date:
2024-12-31 11:03:04 UTC
Severity:
normal
Tags:
#1091544#5
Date:
2024-12-28 12:12:42 UTC
From:
To:
The ffmpeg package now FTBFS on arm64 due to a regression in upstream
binutils as can be seen in this buildd log:
https://buildd.debian.org/status/fetch.php?pkg=ffmpeg&arch=arm64&ver=7%3A7.1-3%2Bb1&stamp=1735368956&raw=0

Relevant part:

```
gcc -I. -Isrc/ -Wdate-time -D_FORTIFY_SOURCE=2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -D_ISOC11_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -DZLIB_CONST -fPIC -g  -MMD -MF libavfilter/aarch64/vf_bwdif_neon.d -MT libavfilter/aarch64/vf_bwdif_neon.o -c -o libavfilter/aarch64/vf_bwdif_neon.o src/libavfilter/aarch64/vf_bwdif_neon.S
ranlib -D libavdevice/libavdevice.a
src/libavfilter/aarch64/vf_bwdif_neon.S: Assembler messages:
src/libavfilter/aarch64/vf_bwdif_neon.S:155: Error: unknown mnemonic `endconst' -- `endconst'
src/libavfilter/aarch64/vf_bwdif_neon.S:427: Error: unknown mnemonic `endfunc' -- `endfunc'
src/libavfilter/aarch64/vf_bwdif_neon.S:192: Error: .endfunc missing for previous .func
src/libavfilter/aarch64/vf_bwdif_neon.S:448:  Info: macro invoked from here
src/libavfilter/aarch64/vf_bwdif_neon.S:630: Error: unknown mnemonic `endfunc' -- `endfunc'
src/libavfilter/aarch64/vf_bwdif_neon.S:192: Error: .endfunc missing for previous .func
src/libavfilter/aarch64/vf_bwdif_neon.S:648:  Info: macro invoked from here
src/libavfilter/aarch64/vf_bwdif_neon.S:734: Error: unknown mnemonic `endfunc' -- `endfunc'
src/libavfilter/aarch64/vf_bwdif_neon.S:192: Error: .endfunc missing for previous .func
src/libavfilter/aarch64/vf_bwdif_neon.S:749:  Info: macro invoked from here
src/libavfilter/aarch64/vf_bwdif_neon.S:788: Error: unknown mnemonic `endfunc' -- `endfunc'
make[2]: *** [/<<PKGBUILDDIR>>/ffbuild/common.mak:93: libavfilter/aarch64/vf_bwdif_neon.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/<<PKGBUILDDIR>>/debian/standard'
dh_auto_build: error: cd debian/standard && make -j8 "INSTALL=install --strip-program=true" returned exit code 2
cat: debian/standard/config.log: No such file or directory
make[1]: *** [debian/rules:313: build_standard] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:267: binary-arch] Error 2
dpkg-buildpackage: error: debian/rules binary-arch subprocess returned exit status 2
```

Putting that error in a search engine showed that someone reported that
regression in 2.44/trunk in the upstream bug tracker here:
https://sourceware.org/bugzilla/show_bug.cgi?id=32486

I figured it is probably useful to track that in Debian's BTS as well.

Cheers,
  Diederik

- -- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (101, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.6-amd64 (SMP w/16 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-----BEGIN PGP SIGNATURE-----

iHUEARYIAB0WIQT1sUPBYsyGmi4usy/XblvOeH7bbgUCZ2/rNAAKCRDXblvOeH7b
bob9AQCv9eETug97kzJkjN7oihuxht5PsbeW3mOIc8520ffITQD+Mdz5SkdMy9IN
4UWi8wArezEq+WsWpfQVosNtayjHzwg=
=9Z5Q
-----END PGP SIGNATURE-----

#1091544#10
Date:
2024-12-28 13:21:04 UTC
From:
To:

#1091544#19
Date:
2024-12-28 13:41:53 UTC
From:
To:
Control: severity -1 serious
Control: tag -1 ftbfs sid trixie
Control: merge -1 1091158

I didn't check the BTS good enough as there was already a *forwarded*
bug for this issue, thus merging.

#1091544#28
Date:
2024-12-28 13:53:14 UTC
From:
To:
Control: tag 1091158 +upstream
Control: merge -1 1091158

Looks like the merge failed due to the upstream tag, fixing that ...

#1091544#33
Date:
2024-12-28 14:04:32 UTC
From:
To:
Control: forcemerge -1 1091158

That still doesn't work, thus forcemerging.

#1091544#40
Date:
2024-12-28 14:21:25 UTC
From:
To:
Control: affects -1 src:qtwebengine-opensource-src src:ffmpeg src:qt6-webengine

Another reminder why I don't like forcing things :-/
Sorry about the BTS spam.

#1091544#49
Date:
2024-12-31 10:59:43 UTC
From:
To:
Version: 2.43.50.20241230-1

The changes have been reverted in the latest binutils upload.

 binutils (2.43.50.20241230-1) unstable; urgency=medium
 .
   * New upstream snapshot, taken from the trunk.
   * Revert the fix for PR gas/32391. Closes: #1090999, #1091488.
   * Build with GCC 14.2.0-12 on ARM32. Closes: #1091281.

Cheers