@@ -71,6 +71,7 @@ SRC_URI = "${BASEURI} \
file://0026-gcc-Fix-c-tweak-for-Wrange-loop-construct.patch \
file://0027-gcc-backport-patch-to-fix-data-relocation-to-ENDBR-s.patch \
file://gcc.git-ab884fffe3fc82a710bea66ad651720d71c938b8.patch \
+ file://0028-Undef-_TIME_BITS-along-with-_FILE_OFFSET_BITS-on-Lin.patch \
"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/${SOURCEDIR}"
new file mode 100644
@@ -0,0 +1,44 @@
+From 883d5549dc959b736e3cb61b989272a9e6a42565 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 3 Apr 2025 17:09:22 +0800
+Subject: [PATCH] Undef _TIME_BITS along with _FILE_OFFSET_BITS on Linux
+
+On 32-bit glibc>=2.34 systems using 64bit time_t build fails because
+_FILE_OFFSET_BITS is undefined here but _TIME_BITS is still set to 64
+
+Fixes
+
+```
+/usr/include/features-time64.h:26:5: error: "_TIME_BITS=64 is allowed
+ only with _FILE_OFFSET_BITS=64"
+| # error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64"
+| ^
+| 1 error generated.
+```
+Upstream-Status: Backport [https://github.com/gcc-mirror/gcc/commit/fa321004f3f6288d3ee2eefa6b02177131882dca]
+
+Signed-off-by: Jiaying Song <jiaying.song.cn@windriver.com>
+---
+ libsanitizer/sanitizer_common/sanitizer_procmaps_solaris.cpp | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/libsanitizer/sanitizer_common/sanitizer_procmaps_solaris.cpp b/libsanitizer/sanitizer_common/sanitizer_procmaps_solaris.cpp
+index eeb49e2af..f78558bed 100644
+--- a/libsanitizer/sanitizer_common/sanitizer_procmaps_solaris.cpp
++++ b/libsanitizer/sanitizer_common/sanitizer_procmaps_solaris.cpp
+@@ -10,7 +10,12 @@
+ //===----------------------------------------------------------------------===//
+
+ // Before Solaris 11.4, <procfs.h> doesn't work in a largefile environment.
++
+ #undef _FILE_OFFSET_BITS
++
++// Avoid conflict between `_TIME_BITS` defined vs. `_FILE_OFFSET_BITS`
++// undefined in some Linux configurations.
++#undef _TIME_BITS
+ #include "sanitizer_platform.h"
+ #if SANITIZER_SOLARIS
+ # include <fcntl.h>
+--
+2.34.1
+