rpm/SOURCES/0001-Fix-Treat-x86_64_v2-as-x86_64-in-architecture-checks.patch

43 lines
1.3 KiB
Diff

From 86efc664f71721cb2fb1ec512f29b36876f86baa Mon Sep 17 00:00:00 2001
From: eabdullin <ed.abdullin.1@gmail.com>
Date: Tue, 9 Jul 2024 17:03:27 +0300
Subject: [PATCH] Fix: Treat x86_64_v2 as x86_64 in architecture checks
This change allows spec files to use x86_64_v2 as an alias for x86_64, ensuring compatibility with packages and build scripts expecting x86_64.
---
build/parseSpec.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/build/parseSpec.c b/build/parseSpec.c
index d6e998a..102ce5b 100644
--- a/build/parseSpec.c
+++ b/build/parseSpec.c
@@ -425,7 +425,24 @@ do { \
return PART_ERROR; \
} \
match = matchTok(exp, s); \
+ /* Additional check for x86_64_v2 */ \
+ char *s_copy = strdup(s); \
+ if (s_copy == NULL) { \
+ rpmlog(RPMLOG_ERR, _("Memory allocation error\n")); \
+ return PART_ERROR; \
+ } \
+ char *newline = strchr(s_copy, '\n'); \
+ if (newline) *newline = '\0'; \
+ char *token_ptr = strtok(s_copy, " "); \
+ while (token_ptr != NULL) { \
+ if (!match && strcmp(token_ptr, "x86_64") == 0 && strcmp(exp, "x86_64_v2") == 0) { \
+ match = 1; \
+ break; \
+ } \
+ token_ptr = strtok(NULL, " "); \
+ } \
free(exp); \
+ free(s_copy); \
} while (0)
--
2.39.3 (Apple Git-146)