package/gcc: backport upstream fix for glibc 2.42 build
glibc 2.42 drops <termio.h>, so the libsanitizer code needs to be adjusted accordingly, by backporting upstream gcc fixes. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> [Julien: - renumbered 14.3.0/0003 patch to 14.3.0/0004 - renumbered 15.1.0/0002 patch to 15.1.0/0004 ] Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
committed by
Julien Olivain
parent
6e51f58355
commit
c9c8624d45
@@ -0,0 +1,81 @@
|
||||
From d32ece49d32b00448d967e7dbc6900fb25cbc775 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 2 May 2025 17:41:43 +0200
|
||||
Subject: [PATCH] libsanitizer: Fix build with glibc 2.42
|
||||
|
||||
The termio structure will be removed from glibc 2.42. It has
|
||||
been deprecated since the late 80s/early 90s.
|
||||
|
||||
Cherry-picked from LLVM commit 59978b21ad9c65276ee8e14f26759691b8a65763
|
||||
("[sanitizer_common] Remove interceptors for deprecated struct termio
|
||||
(#137403)").
|
||||
|
||||
Co-Authored-By: Tom Stellard <tstellar@redhat.com>
|
||||
|
||||
libsanitizer/
|
||||
|
||||
* sanitizer_common/sanitizer_common_interceptors_ioctl.inc: Cherry
|
||||
picked from LLVM commit 59978b21ad9c65276ee8e14f26759691b8a65763.
|
||||
* sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise.
|
||||
* sanitizer_common/sanitizer_platform_limits_posix.h: Likewise.
|
||||
|
||||
Upstream: 1789c57dc97ea2f9819ef89e28bf17208b6208e7 (gcc master branch)
|
||||
Upstream: d32ece49d32b00448d967e7dbc6900fb25cbc775 (gcc 15.x branch)
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
.../sanitizer_common_interceptors_ioctl.inc | 8 --------
|
||||
.../sanitizer_common/sanitizer_platform_limits_posix.cpp | 3 ---
|
||||
.../sanitizer_common/sanitizer_platform_limits_posix.h | 1 -
|
||||
3 files changed, 12 deletions(-)
|
||||
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
index 49ec4097c90..dda11daa77f 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
@@ -338,17 +338,9 @@ static void ioctl_table_fill() {
|
||||
_(SOUND_PCM_WRITE_CHANNELS, WRITE, sizeof(int));
|
||||
_(SOUND_PCM_WRITE_FILTER, WRITE, sizeof(int));
|
||||
_(TCFLSH, NONE, 0);
|
||||
-#if SANITIZER_GLIBC
|
||||
- _(TCGETA, WRITE, struct_termio_sz);
|
||||
-#endif
|
||||
_(TCGETS, WRITE, struct_termios_sz);
|
||||
_(TCSBRK, NONE, 0);
|
||||
_(TCSBRKP, NONE, 0);
|
||||
-#if SANITIZER_GLIBC
|
||||
- _(TCSETA, READ, struct_termio_sz);
|
||||
- _(TCSETAF, READ, struct_termio_sz);
|
||||
- _(TCSETAW, READ, struct_termio_sz);
|
||||
-#endif
|
||||
_(TCSETS, READ, struct_termios_sz);
|
||||
_(TCSETSF, READ, struct_termios_sz);
|
||||
_(TCSETSW, READ, struct_termios_sz);
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
index c87d5ef42c9..7bbc6f2edac 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
@@ -485,9 +485,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
|
||||
unsigned struct_input_id_sz = sizeof(struct input_id);
|
||||
unsigned struct_mtpos_sz = sizeof(struct mtpos);
|
||||
unsigned struct_rtentry_sz = sizeof(struct rtentry);
|
||||
-#if SANITIZER_GLIBC || SANITIZER_ANDROID
|
||||
- unsigned struct_termio_sz = sizeof(struct termio);
|
||||
-#endif
|
||||
unsigned struct_vt_consize_sz = sizeof(struct vt_consize);
|
||||
unsigned struct_vt_sizes_sz = sizeof(struct vt_sizes);
|
||||
unsigned struct_vt_stat_sz = sizeof(struct vt_stat);
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
index c07f7cd0b0d..a80df656826 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
@@ -1029,7 +1029,6 @@ extern unsigned struct_hd_geometry_sz;
|
||||
extern unsigned struct_input_absinfo_sz;
|
||||
extern unsigned struct_input_id_sz;
|
||||
extern unsigned struct_mtpos_sz;
|
||||
-extern unsigned struct_termio_sz;
|
||||
extern unsigned struct_vt_consize_sz;
|
||||
extern unsigned struct_vt_sizes_sz;
|
||||
extern unsigned struct_vt_stat_sz;
|
||||
--
|
||||
2.50.1
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
From d32ece49d32b00448d967e7dbc6900fb25cbc775 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 2 May 2025 17:41:43 +0200
|
||||
Subject: [PATCH] libsanitizer: Fix build with glibc 2.42
|
||||
|
||||
The termio structure will be removed from glibc 2.42. It has
|
||||
been deprecated since the late 80s/early 90s.
|
||||
|
||||
Cherry-picked from LLVM commit 59978b21ad9c65276ee8e14f26759691b8a65763
|
||||
("[sanitizer_common] Remove interceptors for deprecated struct termio
|
||||
(#137403)").
|
||||
|
||||
Co-Authored-By: Tom Stellard <tstellar@redhat.com>
|
||||
|
||||
libsanitizer/
|
||||
|
||||
* sanitizer_common/sanitizer_common_interceptors_ioctl.inc: Cherry
|
||||
picked from LLVM commit 59978b21ad9c65276ee8e14f26759691b8a65763.
|
||||
* sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise.
|
||||
* sanitizer_common/sanitizer_platform_limits_posix.h: Likewise.
|
||||
|
||||
Upstream: 1789c57dc97ea2f9819ef89e28bf17208b6208e7 (gcc master branch)
|
||||
Upstream: d32ece49d32b00448d967e7dbc6900fb25cbc775 (gcc 15.x branch)
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
.../sanitizer_common_interceptors_ioctl.inc | 8 --------
|
||||
.../sanitizer_common/sanitizer_platform_limits_posix.cpp | 3 ---
|
||||
.../sanitizer_common/sanitizer_platform_limits_posix.h | 1 -
|
||||
3 files changed, 12 deletions(-)
|
||||
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
index 49ec4097c90..dda11daa77f 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
@@ -338,17 +338,9 @@ static void ioctl_table_fill() {
|
||||
_(SOUND_PCM_WRITE_CHANNELS, WRITE, sizeof(int));
|
||||
_(SOUND_PCM_WRITE_FILTER, WRITE, sizeof(int));
|
||||
_(TCFLSH, NONE, 0);
|
||||
-#if SANITIZER_GLIBC
|
||||
- _(TCGETA, WRITE, struct_termio_sz);
|
||||
-#endif
|
||||
_(TCGETS, WRITE, struct_termios_sz);
|
||||
_(TCSBRK, NONE, 0);
|
||||
_(TCSBRKP, NONE, 0);
|
||||
-#if SANITIZER_GLIBC
|
||||
- _(TCSETA, READ, struct_termio_sz);
|
||||
- _(TCSETAF, READ, struct_termio_sz);
|
||||
- _(TCSETAW, READ, struct_termio_sz);
|
||||
-#endif
|
||||
_(TCSETS, READ, struct_termios_sz);
|
||||
_(TCSETSF, READ, struct_termios_sz);
|
||||
_(TCSETSW, READ, struct_termios_sz);
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
index c87d5ef42c9..7bbc6f2edac 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
@@ -485,9 +485,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
|
||||
unsigned struct_input_id_sz = sizeof(struct input_id);
|
||||
unsigned struct_mtpos_sz = sizeof(struct mtpos);
|
||||
unsigned struct_rtentry_sz = sizeof(struct rtentry);
|
||||
-#if SANITIZER_GLIBC || SANITIZER_ANDROID
|
||||
- unsigned struct_termio_sz = sizeof(struct termio);
|
||||
-#endif
|
||||
unsigned struct_vt_consize_sz = sizeof(struct vt_consize);
|
||||
unsigned struct_vt_sizes_sz = sizeof(struct vt_sizes);
|
||||
unsigned struct_vt_stat_sz = sizeof(struct vt_stat);
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
index c07f7cd0b0d..a80df656826 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
@@ -1029,7 +1029,6 @@ extern unsigned struct_hd_geometry_sz;
|
||||
extern unsigned struct_input_absinfo_sz;
|
||||
extern unsigned struct_input_id_sz;
|
||||
extern unsigned struct_mtpos_sz;
|
||||
-extern unsigned struct_termio_sz;
|
||||
extern unsigned struct_vt_consize_sz;
|
||||
extern unsigned struct_vt_sizes_sz;
|
||||
extern unsigned struct_vt_stat_sz;
|
||||
--
|
||||
2.50.1
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
From d32ece49d32b00448d967e7dbc6900fb25cbc775 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 2 May 2025 17:41:43 +0200
|
||||
Subject: [PATCH] libsanitizer: Fix build with glibc 2.42
|
||||
|
||||
The termio structure will be removed from glibc 2.42. It has
|
||||
been deprecated since the late 80s/early 90s.
|
||||
|
||||
Cherry-picked from LLVM commit 59978b21ad9c65276ee8e14f26759691b8a65763
|
||||
("[sanitizer_common] Remove interceptors for deprecated struct termio
|
||||
(#137403)").
|
||||
|
||||
Co-Authored-By: Tom Stellard <tstellar@redhat.com>
|
||||
|
||||
libsanitizer/
|
||||
|
||||
* sanitizer_common/sanitizer_common_interceptors_ioctl.inc: Cherry
|
||||
picked from LLVM commit 59978b21ad9c65276ee8e14f26759691b8a65763.
|
||||
* sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise.
|
||||
* sanitizer_common/sanitizer_platform_limits_posix.h: Likewise.
|
||||
|
||||
Upstream: 1789c57dc97ea2f9819ef89e28bf17208b6208e7 (gcc master branch)
|
||||
Upstream: d32ece49d32b00448d967e7dbc6900fb25cbc775 (gcc 15.x branch)
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
.../sanitizer_common_interceptors_ioctl.inc | 8 --------
|
||||
.../sanitizer_common/sanitizer_platform_limits_posix.cpp | 3 ---
|
||||
.../sanitizer_common/sanitizer_platform_limits_posix.h | 1 -
|
||||
3 files changed, 12 deletions(-)
|
||||
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
index 49ec4097c90..dda11daa77f 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
|
||||
@@ -338,17 +338,9 @@ static void ioctl_table_fill() {
|
||||
_(SOUND_PCM_WRITE_CHANNELS, WRITE, sizeof(int));
|
||||
_(SOUND_PCM_WRITE_FILTER, WRITE, sizeof(int));
|
||||
_(TCFLSH, NONE, 0);
|
||||
-#if SANITIZER_GLIBC
|
||||
- _(TCGETA, WRITE, struct_termio_sz);
|
||||
-#endif
|
||||
_(TCGETS, WRITE, struct_termios_sz);
|
||||
_(TCSBRK, NONE, 0);
|
||||
_(TCSBRKP, NONE, 0);
|
||||
-#if SANITIZER_GLIBC
|
||||
- _(TCSETA, READ, struct_termio_sz);
|
||||
- _(TCSETAF, READ, struct_termio_sz);
|
||||
- _(TCSETAW, READ, struct_termio_sz);
|
||||
-#endif
|
||||
_(TCSETS, READ, struct_termios_sz);
|
||||
_(TCSETSF, READ, struct_termios_sz);
|
||||
_(TCSETSW, READ, struct_termios_sz);
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
index c87d5ef42c9..7bbc6f2edac 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
|
||||
@@ -485,9 +485,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
|
||||
unsigned struct_input_id_sz = sizeof(struct input_id);
|
||||
unsigned struct_mtpos_sz = sizeof(struct mtpos);
|
||||
unsigned struct_rtentry_sz = sizeof(struct rtentry);
|
||||
-#if SANITIZER_GLIBC || SANITIZER_ANDROID
|
||||
- unsigned struct_termio_sz = sizeof(struct termio);
|
||||
-#endif
|
||||
unsigned struct_vt_consize_sz = sizeof(struct vt_consize);
|
||||
unsigned struct_vt_sizes_sz = sizeof(struct vt_sizes);
|
||||
unsigned struct_vt_stat_sz = sizeof(struct vt_stat);
|
||||
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
index c07f7cd0b0d..a80df656826 100644
|
||||
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
|
||||
@@ -1029,7 +1029,6 @@ extern unsigned struct_hd_geometry_sz;
|
||||
extern unsigned struct_input_absinfo_sz;
|
||||
extern unsigned struct_input_id_sz;
|
||||
extern unsigned struct_mtpos_sz;
|
||||
-extern unsigned struct_termio_sz;
|
||||
extern unsigned struct_vt_consize_sz;
|
||||
extern unsigned struct_vt_sizes_sz;
|
||||
extern unsigned struct_vt_stat_sz;
|
||||
--
|
||||
2.50.1
|
||||
|
||||
Reference in New Issue
Block a user