Package: musl Version: 1.2.5-1 Severity: normal Tags: upstream X-Debbugs-Cc: t...@mirbsd.de, m...@lists.openwall.com
On m68k (ARAnyM Atari TT/Falcon VM): root@aranym:~ # cat t.c #include <stdio.h> int main(void) { printf("main = 0x%lX\n", (unsigned long)main); return (0); } root@aranym:~ # musl-gcc -fPIE -static -static-pie -fno-lto -o t t.c root@aranym:~ # file t t: ELF 32-bit MSB pie executable, Motorola m68k, 68020, version 1 (SYSV), static-pie linked, with debug_info, not stripped root@aranym:~ # ./t Segmentation fault 139|root@aranym:~ # musl-gcc -fPIE -static-pie -fno-lto -o t t.c root@aranym:~ # file t t: ELF 32-bit MSB pie executable, Motorola m68k, 68020, version 1 (SYSV), static-pie linked, with debug_info, not stripped root@aranym:~ # ./t Segmentation fault The same test program in a qemu-user-based sh4 buildd: main = 0x400006A4 main = 0x400006A4 main = 0x400006A4 On amd64, arm64, armel, armhf, i386, loong64, mips64el¹, ppc64el, riscv64 and s390x, it DTRT. ① with a manual hack due to the still-existing musl-gcc wrapper bug: muslspec=$topdir/xmusl.spec case $DEB_HOST_ARCH in (mipsel) cat /usr/lib/mipsel-linux-musl/musl-gcc.specs ;; (mips64el) cat /usr/lib/mips64el-linux-musl/musl-gcc.specs ;; esac >"$muslspec" || exit 255 printf '%s\n' 1a '%rename cc1 old_cc1' . \ '/^[*]cc1:/+1s/^/%(old_cc1) /' w q | \ ed -s "$muslspec" || exit 255 test -s "$muslspec" || exit 255 muslgcc="$CC -specs $muslspec" -- System Information: Debian Release: trixie/sid APT prefers unreleased APT policy: (500, 'unreleased'), (500, 'unstable') Architecture: m68k Kernel: Linux 6.6.15-m68k (UP) Locale: LANG=C, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/lksh Init: sysvinit (via /sbin/init) -- no debconf information