syslinux hdt.c32 (Hardware Detection Tool) is broken since AlpineLinux v3.9
hdt.c32 (part of syslinux package) fails with following diagnostics:
Undef symbol FAIL: exp
Failed to load libgpl.c32
Failed to load COM32 file hdt.c32
This is known issue with gcc8, Debian patch exists.
Seems like it’s still not fixed upstream.
AlpineLinux prior to v3.9 is unaffected AFAIK.
Debian bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=918915
Debian patch:
https://sources.debian.org/patches/syslinux/3:6.04~git20190206.bf6db5b4+dfsg1-1/0018-prevent-pow-optimization.patch/
ArchLinux bug: https://bugs.archlinux.org/task/59987
(from redmine: issue id 10546, created on 2019-06-08, closed on 2019-06-19)
- Changesets:
- Revision 0ab839af by Daniel Isaksen on 2019-06-10T09:21:58Z:
main/syslinux: Apply Debian's patch to fix HDT.
With the current GCC 8.2.0 from Debian, a section of code calling pow() in
zzjson_parse.c is turned into a sequence calling exp(). Since no exp()
implementation is available in syslinux those optimizations need to be
disabled.
Closes #10546