package/brotli: fix LoongArch64 build

Buildroot commit 473c9400a0 bumped brotli
to version 1.2.0 causing build errors on loongarch64. The build error
does not occur with brotli 1.1.0.

Fixes:
https://autobuild.buildroot.net/results/57f/57f61a5fd17432bba05e4f1865f82cc2f4626d3c/

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 302a325f1f)
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
This commit is contained in:
Bernd Kuhls
2026-01-04 12:02:20 +01:00
committed by Thomas Perale
parent 66dcc3e2a9
commit fd0ea11ac4

View File

@@ -0,0 +1,46 @@
From e230f474b87134e8c6c85b630084c612057f253e Mon Sep 17 00:00:00 2001
From: Evgenii Kliuchnikov <eustas@google.com>
Date: Mon, 3 Nov 2025 07:20:19 -0800
Subject: [PATCH] disable BROTLI_MODEL macro for some targets
PiperOrigin-RevId: 827486322
Upstream: https://github.com/google/brotli/commit/e230f474b87134e8c6c85b630084c612057f253e
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
c/common/platform.h | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/c/common/platform.h b/c/common/platform.h
index b59f9b809..e1254d5ca 100644
--- a/c/common/platform.h
+++ b/c/common/platform.h
@@ -213,6 +213,10 @@ To apply compiler hint, enclose the branching condition into macros, like this:
#define BROTLI_TARGET_MIPS64
#endif
+#if defined(__ia64__) || defined(_M_IA64)
+#define BROTLI_TARGET_IA64
+#endif
+
#if defined(BROTLI_TARGET_X64) || defined(BROTLI_TARGET_ARMV8_64) || \
defined(BROTLI_TARGET_POWERPC64) || defined(BROTLI_TARGET_RISCV64) || \
defined(BROTLI_TARGET_LOONGARCH64) || defined(BROTLI_TARGET_MIPS64)
@@ -665,13 +669,14 @@ BROTLI_UNUSED_FUNCTION void BrotliSuppressUnusedFunctions(void) {
#undef BROTLI_TEST
#endif
-#if BROTLI_GNUC_HAS_ATTRIBUTE(model, 3, 0, 3)
+#if !defined(BROTLI_MODEL) && BROTLI_GNUC_HAS_ATTRIBUTE(model, 3, 0, 3) && \
+ !defined(BROTLI_TARGET_IA64) && !defined(BROTLI_TARGET_LOONGARCH64)
#define BROTLI_MODEL(M) __attribute__((model(M)))
#else
#define BROTLI_MODEL(M) /* M */
#endif
-#if BROTLI_GNUC_HAS_ATTRIBUTE(cold, 4, 3, 0)
+#if !defined(BROTLI_COLD) && BROTLI_GNUC_HAS_ATTRIBUTE(cold, 4, 3, 0)
#define BROTLI_COLD __attribute__((cold))
#else
#define BROTLI_COLD /* cold */