Source: qtwebengine-opensource-src
Version: 5.15.19+dfsg2-2
Severity: important
Tags: ftbfs upstream
Justification: fails to build from source
User: [email protected]
Usertags: glibc-2.43

Dear maintainer(s),

qtwebengine-opensource-src fails to build from source with glibc 2.43,
currently in experimental. From the build log:

| FAILED: [code=1] obj/sandbox/linux/sandbox_services/broker_process.o 
| /usr/bin/g++ -MMD -MF obj/sandbox/linux/sandbox_services/broker_process.o.d 
-DSANDBOX_IMPLEMENTATION -DUSE_UDEV -DUSE_AURA=1 -DUSE_NSS_CERTS=1 
-DUSE_OZONE=1 -DOFFICIAL_BUILD -DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DNO_UNWIND_TABLES 
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND 
-DDYNAMIC_ANNOTATIONS_ENABLED=0 -Igen -I../../3rdparty/chromium 
-I../../3rdparty/chromium/third_party/perfetto/include 
-Igen/third_party/perfetto/build_config -Igen/third_party/perfetto -Igen -Igen 
-Igen -Igen -I../../3rdparty/chromium/third_party/abseil-cpp 
-I../../3rdparty/chromium/third_party/boringssl/src/include 
-I../../3rdparty/chromium/third_party/protobuf/src -Igen/protoc_out 
-fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector 
-fno-unwind-tables -fno-asynchronous-unwind-tables -fPIC -pipe -pthread -Wall 
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wno-unused-local-typedefs 
-Wno-maybe-uninitialized -Wno-deprecated-declarations 
-fno-delete-null-pointer-checks -Wno-comments -Wno-packed-not-aligned 
-Wno-dangling-else -Wno-missing-field-initializers -Wno-unused-parameter -O2 
-fno-ident -fdata-sections -ffunction-sections -fno-omit-frame-pointer -g0 
-fvisibility=hidden -std=gnu++17 -Wno-narrowing -Wno-class-memaccess 
-Wno-attributes -Wno-class-memaccess -Wno-subobject-linkage 
-Wno-invalid-offsetof -Wno-return-type -Wno-deprecated-copy -fno-exceptions 
-fno-rtti -fvisibility-inlines-hidden -c 
../../3rdparty/chromium/sandbox/linux/syscall_broker/broker_process.cc -o 
obj/sandbox/linux/sandbox_services/broker_process.o
| In file included from 
../../3rdparty/chromium/sandbox/linux/bpf_dsl/trap_registry.h:11,
|                  from 
../../3rdparty/chromium/sandbox/linux/syscall_broker/broker_process.h:18,
|                  from 
../../3rdparty/chromium/sandbox/linux/syscall_broker/broker_process.cc:5:
| ../../3rdparty/chromium/sandbox/linux/system_headers/linux_seccomp.h:224:39: 
error: expected identifier before numeric constant
|   224 | #define SYS_SECCOMP                   1
|       |                                       ^
| ../../3rdparty/chromium/sandbox/linux/system_headers/linux_seccomp.h:224:39: 
error: expected ‘}’ before numeric constant
| In file included from /usr/include/signal.h:58,
|                  from 
../../3rdparty/chromium/sandbox/linux/syscall_broker/broker_process.cc:8:
| /usr/include/aarch64-linux-gnu/bits/siginfo-consts.h:218:1: note: to match 
this ‘{’
|   218 | {
|       | ^
| ../../3rdparty/chromium/sandbox/linux/system_headers/linux_seccomp.h:224:39: 
error: expected unqualified-id before numeric constant
|   224 | #define SYS_SECCOMP                   1
|       |                                       ^
| In file included from /usr/include/features.h:539,
|                  from /usr/include/aarch64-linux-gnu/sys/stat.h:25,
|                  from 
../../3rdparty/chromium/sandbox/linux/syscall_broker/broker_process.h:8:
| /usr/include/signal.h:393:1: error: expected declaration before ‘}’ token
|   393 | __END_DECLS
|       | ^~~~~~~~~~~

| ninja: build stopped: subcommand failed.
| make[5]: *** [Makefile.gn_run:360: run_ninja] Error 1
| make[5]: Leaving directory 
'/build/reproducible-path/qtwebengine-opensource-src-5.15.19+dfsg2/src/core'
| make[4]: *** [Makefile:82: sub-gn_run-pro-make_first] Error 2
| make[4]: Leaving directory 
'/build/reproducible-path/qtwebengine-opensource-src-5.15.19+dfsg2/src/core'
| make[3]: *** [Makefile:80: sub-core-make_first] Error 2
| make[3]: Leaving directory 
'/build/reproducible-path/qtwebengine-opensource-src-5.15.19+dfsg2/src'
| make[2]: *** [Makefile:49: sub-src-make_first] Error 2
| make[2]: Leaving directory 
'/build/reproducible-path/qtwebengine-opensource-src-5.15.19+dfsg2'
| dh_auto_build: error: make -j128 -Onone returned exit code 2
| make[1]: *** [debian/rules:102: override_dh_auto_build-arch] Error 25
| make[1]: Leaving directory 
'/build/reproducible-path/qtwebengine-opensource-src-5.15.19+dfsg2'
| make: *** [debian/rules:65: binary] Error 2
| dpkg-buildpackage: error: debian/rules binary 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 believe that the patch used by OpenSUSE [3]
fixes the issue, but I haven't tested it.

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/qtwebengine-opensource-src_arm64.build
[2] 
https://sourceware.org/git/?p=glibc.git;a=commit;h=6f120faf649f03a261e3e64d5b5991030383c1b3
[3] 
https://build.opensuse.org/projects/openSUSE:Factory/packages/chromium/files/chromium-141-glibc-2.42-SYS_SECCOMP.patch?expand=0

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

Reply via email to