1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
diff --git a/external/skia/UnpackedTarball_skia.mk b/external/skia/UnpackedTarball_skia.mk
index 692eba0130e5..066521387d5b 100644
--- a/external/skia/UnpackedTarball_skia.mk
+++ b/external/skia/UnpackedTarball_skia.mk
@@ -44,6 +44,7 @@ skia_patches := \
0004-loong64-Fix-the-remaining-implicit-vector-casts.patch \
msvc-unknown-attributes.patch.1 \
fix-semaphore-include.patch.1 \
+ gcc-no-musttail.diff \
ifneq ($(MSYSTEM),)
# use binary flag so patch from git-bash won't choke on mixed line-endings in patches
--- a/external/skia/gcc-no-musttail.diff 2025-11-16 13:22:36.315966137 +0100
+++ b/external/skia/gcc-no-musttail.diff 2025-11-23 08:52:51.772213670 +0100
@@ -0,0 +1,21 @@
+diff -urN skia-old/modules/skcms/src/skcms_internals.h skia/modules/skcms/src/skcms_internals.h
+--- skia-old/modules/skcms/src/skcms_internals.h 2025-11-13 07:45:02.000000000 +0100
++++ skia/modules/skcms/src/skcms_internals.h 2025-11-30 12:05:23.846221957 +0100
+@@ -53,13 +53,16 @@
+ && !defined(__riscv) \
+ && !defined(__powerpc__) \
+ && !defined(__loongarch__) \
++ && !defined(__alpha__) \
+ && !defined(_WIN32) && !defined(__SYMBIAN32__)
+ #define SKCMS_HAS_MUSTTAIL 1
+ #endif
+ #elif defined(__GNUC__) && !defined(SKCMS_HAS_MUSTTAIL)
+ // GCC on riscv64 does not support our tail call functions
+ // cf. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121784
+- #if __has_cpp_attribute(clang::musttail) && !defined(__riscv)
++ // copy the rest over from the clang case, just in case we ever built with
++ // gcc for them (which we do for alpha right now)
++ #if __has_cpp_attribute(clang::musttail) && !defined(__arm__) && !defined(__riscv) && !defined (__powerpc__) && !defined(__loongarch__) && !defined (__alpha__)
+ #define SKCMS_HAS_MUSTTAIL 1
+ #else
+ #define SKCMS_HAS_MUSTTAIL 0
|