[qt/qt-creator/elfutils]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/qt-creator/elfutils
Pushed by mirror-service into branch 'upstream/users/amerey/try-header'.
Changed from 0000000000000000000000000000000000000000 to 7e080b03729058e5c8a9339b557dfb10f0c0f848
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.
This change contains the following new commits:
Git commit 7e080b03729058e5c8a9339b557dfb10f0c0f848 by Aaron Merey (on behalf of Daeho Ro) on 18/08/2026 at 13:05..
backends: use <sys/uio.h> instead of <linux/uio.h> for struct iovec
Since commit 0e8b57a3 ("elfcompress: Handle existing output files
(symlinks)") lib/system.h includes <fcntl.h>. When _GNU_SOURCE is
defined, glibc's <fcntl.h> pulls in <bits/types/struct_iovec.h> (via
bits/fcntl-linux.h), which defines struct iovec. The kernel UAPI header
<linux/uio.h> defines struct iovec unconditionally, so including it
after "system.h" now breaks the aarch64 backend build:
In file included from aarch64_initreg.c:36:
/usr/include/linux/uio.h:17:8: error: redefinition of 'struct iovec'
17 | struct iovec
| ^~~~~
In file included from /usr/include/aarch64-linux-gnu/bits/fcntl-linux.h:38,
from /usr/include/aarch64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from ../lib/system.h:42,
from aarch64_initreg.c:33:
/usr/include/aarch64-linux-gnu/bits/types/struct_iovec.h:26:8: note: originally defined here
Seen building 0.196 on aarch64 with glibc 2.39 and gcc 13.3.0.
Both files only need struct iovec to call ptrace (PTRACE_GETREGSET),
which glibc provides in <sys/uio.h>; that header guards the definition
with __iovec_defined, so it composes with the rest of system.h.
arm_initreg.c does not currently include "system.h" and so still builds,
but it has the same latent conflict.
* backends/aarch64_initreg.c: Include <sys/uio.h> instead of
<linux/uio.h>.
* backends/arm_initreg.c: Likewise.
Signed-off-by: Daeho Ro <[email protected]>
https://invent.kde.org/qt/qt-creator/elfutils/-/commit/7e080b03729058e5c8a9339b557dfb10f0c0f848