From 12e6fb937556e2db35710700d0f9f8822fe467ab Mon Sep 17 00:00:00 2001 From: Sergey Cherevko Date: Tue, 3 Dec 2024 13:02:46 +0300 Subject: [PATCH] Consider x86_64_v2 as x86_64 --- .../0001-Consider-x86_64_v2-as-x86_64.patch | 57 +++++++++++++++++++ SPECS/rpm.spec | 8 ++- 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 SOURCES/0001-Consider-x86_64_v2-as-x86_64.patch diff --git a/SOURCES/0001-Consider-x86_64_v2-as-x86_64.patch b/SOURCES/0001-Consider-x86_64_v2-as-x86_64.patch new file mode 100644 index 0000000..c9d9961 --- /dev/null +++ b/SOURCES/0001-Consider-x86_64_v2-as-x86_64.patch @@ -0,0 +1,57 @@ +From 02a8058b3ab0fb695c528c56b51fef3df3815de1 Mon Sep 17 00:00:00 2001 +From: Sergey Cherevko +Date: Tue, 3 Dec 2024 12:19:02 +0300 +Subject: [PATCH] Consider x86_64_v2 as x86_64 + +--- + build/parsePreamble.c | 4 ++++ + build/parseSpec.c | 17 +++++++++++++++++ + 2 files changed, 21 insertions(+) + +diff --git a/build/parsePreamble.c b/build/parsePreamble.c +index de205d5..cdd36a4 100644 +--- a/build/parsePreamble.c ++++ b/build/parsePreamble.c +@@ -425,6 +425,10 @@ static int isMemberInEntry(Header h, const char *name, rpmTagVal tag) + return -1; + + while ((str = rpmtdNextString(&td))) { ++ if (!rstrcasecmp(str, "x86_64") && !rstrcasecmp(name, "x86_64_v2")) { ++ found = 1; ++ break; ++ } + if (!rstrcasecmp(str, name)) { + found = 1; + break; +diff --git a/build/parseSpec.c b/build/parseSpec.c +index 3929c0a..445c994 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.43.5 + diff --git a/SPECS/rpm.spec b/SPECS/rpm.spec index bd10307..bbac0e4 100644 --- a/SPECS/rpm.spec +++ b/SPECS/rpm.spec @@ -36,7 +36,7 @@ Summary: The RPM package management system Name: rpm Version: %{rpmver} -Release: %{?snapver:0.%{snapver}.}%{baserelease}%{?dist} +Release: %{?snapver:0.%{snapver}.}%{baserelease}%{?dist}.inferit Url: http://www.rpm.org/ License: GPL-2.0-or-later Source0: http://ftp.rpm.org/releases/%{srcdir}/rpm-%{srcver}.tar.bz2 @@ -126,6 +126,9 @@ Requires(pre): findutils Requires(pre): sed %patchlist +# MSVSphere +0001-Consider-x86_64_v2-as-x86_64.patch + # Set rpmdb path to /usr/lib/sysimage/rpm rpm-4.17.x-rpm_dbpath.patch # Disable autoconf config.site processing (#962837) @@ -639,6 +642,9 @@ fi %doc %{_defaultdocdir}/rpm/API/ %changelog +* Tue Dec 03 2024 Sergey Cherevko - 4.19.1.1-7.inferit +- Consider x86_64_v2 as x86_64 + * Tue Oct 29 2024 Troy Dawson - 4.19.1.1-7 - Bump release for October 2024 mass rebuild: Resolves: RHEL-64018