Source: gcc-12
Version: 12.5.0-7
Severity: important
Tags: ftbfs upstream
Justification: fails to build from source
User: [email protected]
Usertags: glibc-2.43

Dear maintainer(s),

gcc-12 fails to build from source with glibc 2.43, currently in
experimental. From the build log:

| sysinfo.go:7718:7: error: redefinition of 'SYS_SECCOMP'
|  7718 | const SYS_SECCOMP = _SYS_SECCOMP
|       |       ^
| sysinfo.go:7512:7: note: previous definition of 'SYS_SECCOMP' was here
|  7512 | const SYS_SECCOMP = _SYS_seccomp
|       |       ^
| libtool: compile:  /build/reproducible-path/gcc-12-12.5.0/build/./gcc/gccgo 
-B/build/reproducible-path/gcc-12-12.5.0/build/./gcc/ 
-B/usr/aarch64-linux-gnu/bin/ -B/usr/aarch64-linux-gnu/lib/ -isystem 
/usr/aarch64-linux-gnu/include -isystem /usr/aarch64-linux-gnu/sys-include 
-isystem /build/reproducible-path/gcc-12-12.5.0/build/sys-include -fchecking=1 
-O2 -g -I . -c -fgo-pkgpath=path ../../../src/libgo/go/path/match.go 
../../../src/libgo/go/path/path.go -o path.o >/dev/null 2>&1
| mv -f .deps/ubsan_diag.Tpo .deps/ubsan_diag.Plo
| libtool: compile:  /build/reproducible-path/gcc-12-12.5.0/build/./gcc/gccgo 
-B/build/reproducible-path/gcc-12-12.5.0/build/./gcc/ 
-B/usr/aarch64-linux-gnu/bin/ -B/usr/aarch64-linux-gnu/lib/ -isystem 
/usr/aarch64-linux-gnu/include -isystem /usr/aarch64-linux-gnu/sys-include 
-isystem /build/reproducible-path/gcc-12-12.5.0/build/sys-include -fchecking=1 
-O2 -g -I . -c -fgo-pkgpath=sort ../../../src/libgo/go/sort/search.go 
../../../src/libgo/go/sort/slice.go ../../../src/libgo/go/sort/slice_go113.go 
../../../src/libgo/go/sort/sort.go ../../../src/libgo/go/sort/zfuncversion.go 
-o sort.o >/dev/null 2>&1
| libtool: compile:  /build/reproducible-path/gcc-12-12.5.0/build/./gcc/xgcc 
-shared-libgcc -B/build/reproducible-path/gcc-12-12.5.0/build/./gcc -nostdinc++ 
-L/build/reproducible-path/gcc-12-12.5.0/build/aarch64-linux-gnu/libstdc++-v3/src
 
-L/build/reproducible-path/gcc-12-12.5.0/build/aarch64-linux-gnu/libstdc++-v3/src/.libs
 
-L/build/reproducible-path/gcc-12-12.5.0/build/aarch64-linux-gnu/libstdc++-v3/libsupc++/.libs
 -B/usr/aarch64-linux-gnu/bin/ -B/usr/aarch64-linux-gnu/lib/ -isystem 
/usr/aarch64-linux-gnu/include -isystem /usr/aarch64-linux-gnu/sys-include 
-isystem /build/reproducible-path/gcc-12-12.5.0/build/sys-include -fchecking=1 
-D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS 
-D__STDC_LIMIT_MACROS -DPIC -DCAN_SANITIZE_UB=1 -DUBSAN_CAN_USE_CXXABI=1 -I. 
-I../../../../src/libsanitizer/ubsan -I.. -I ../../../../src/libsanitizer -I 
../../../../src/libsanitizer/include -Wall -W -Wno-unused-parameter 
-Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions 
-fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden 
-Wno-variadic-macros -I../../libstdc++-v3/include 
-I../../libstdc++-v3/include/aarch64-linux-gnu 
-I../../../../src/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14 -g -O2 
-D_GNU_SOURCE -MT ubsan_handlers.lo -MD -MP -MF .deps/ubsan_handlers.Tpo -c 
../../../../src/libsanitizer/ubsan/ubsan_handlers.cpp -o ubsan_handlers.o 
>/dev/null 2>&1
| make[6]: *** [Makefile:3051: syscall.lo] Error 1
| make[6]: *** Waiting for unfinished jobs....

...

| make[1]: *** [debian/rules2:1328: stamps/05-build-stamp] Error 2
| make[1]: Leaving directory '/build/reproducible-path/gcc-12-12.5.0'
| make: *** [debian/rules:51: build] Error 2
| dpkg-buildpackage: error: debian/rules build subprocess failed with exit 
status 2

The full build log is available here [1].

The issue is due to the definition of SYS_SECCOMP in <signal/signal.h>
added in glibc 2.43 [2].

I would like to thanks Emanuele Rocca for doing the archive rebuild on a
fast arm64 server.

Regards
Aurelien

[1] 
https://people.debian.org/~ema/glibc-2.43-rebuilds/output-1/gcc-12_arm64.build
[2] 
https://sourceware.org/git/?p=glibc.git;a=commit;h=6f120faf649f03a261e3e64d5b5991030383c1b3

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
[email protected]                     http://aurel32.net

Reply via email to