diff mbox series

[v2,3/5] package/rpm: bump to version 4.18.1

Message ID SN4P221MB0682AD37886082711DF0E5EAA0709@SN4P221MB0682.NAMP221.PROD.OUTLOOK.COM
State Accepted
Headers show
Series [v2,1/5] package/rpm: drop remnants of custom CFLAGS | expand

Commit Message

James Knight May 7, 2023, 9:34 p.m. UTC
The most recent release of RPM is v4.18.1 [1].

Adding an upstream patch to prevent build failures for certain
toolchains (0001-fix-var-declare-in-label-error.patch). Fix should be
available next release.

[1]: https://rpm.org/wiki/Releases/4.18.1

Signed-off-by: James Knight <james.d.knight@live.com>
---
Changes v1 -> v2:
  - New patch in v2, with changes from the original first patch.
---
 .../0001-fix-var-declare-in-label-error.patch | 40 +++++++++++++++++++
 package/rpm/rpm.hash                          |  4 +-
 package/rpm/rpm.mk                            |  2 +-
 3 files changed, 43 insertions(+), 3 deletions(-)
 create mode 100644 package/rpm/0001-fix-var-declare-in-label-error.patch

Comments

Peter Korsgaard June 8, 2023, 8:39 p.m. UTC | #1
>>>>> "James" == James Knight <james.d.knight@live.com> writes:

 > The most recent release of RPM is v4.18.1 [1].
 > Adding an upstream patch to prevent build failures for certain
 > toolchains (0001-fix-var-declare-in-label-error.patch). Fix should be
 > available next release.

 > [1]: https://rpm.org/wiki/Releases/4.18.1

 > Signed-off-by: James Knight <james.d.knight@live.com>
 > ---
 > Changes v1 -> v2:
 >   - New patch in v2, with changes from the original first patch.

Committed to 2023.02.x, thanks.
diff mbox series

Patch

diff --git a/package/rpm/0001-fix-var-declare-in-label-error.patch b/package/rpm/0001-fix-var-declare-in-label-error.patch
new file mode 100644
index 0000000000000000000000000000000000000000..648040c66307d1f896680e79c3fd96fe180c9fa2
--- /dev/null
+++ b/package/rpm/0001-fix-var-declare-in-label-error.patch
@@ -0,0 +1,40 @@ 
+From b960c0b43a080287a7c13533eeb2d9f288db1414 Mon Sep 17 00:00:00 2001
+From: Florian Festi <ffesti@redhat.com>
+Date: Thu, 16 Mar 2023 19:05:04 +0100
+Subject: [PATCH] Fix compiler error on clang
+
+Turns out variable declarations are not allowed after a label, even in
+C99. And while some compilers don't seem to care others do.
+
+Moving the declaration of mayopen to the start of the function to avoid
+this problem.
+
+Resolves: #2435
+
+Upstream: b960c0b43a080287a7c13533eeb2d9f288db1414
+Signed-off-by: James Knight <james.d.knight@live.com>
+---
+ lib/fsm.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/lib/fsm.c b/lib/fsm.c
+index 5671ac642d..183293edb0 100644
+--- a/lib/fsm.c
++++ b/lib/fsm.c
+@@ -879,6 +879,7 @@ int rpmPackageFilesInstall(rpmts ts, rpmte te, rpmfiles files,
+     int nodigest = (rpmtsFlags(ts) & RPMTRANS_FLAG_NOFILEDIGEST) ? 1 : 0;
+     int nofcaps = (rpmtsFlags(ts) & RPMTRANS_FLAG_NOCAPS) ? 1 : 0;
+     int firstlinkfile = -1;
++    int mayopen = 0;
+     char *tid = NULL;
+     struct filedata_s *fdata = xcalloc(fc, sizeof(*fdata));
+     struct filedata_s *firstlink = NULL;
+@@ -1016,7 +1017,7 @@ int rpmPackageFilesInstall(rpmts ts, rpmte te, rpmfiles files,
+ 
+ setmeta:
+ 	    /* Special files require path-based ops */
+-	    int mayopen = S_ISREG(fp->sb.st_mode) || S_ISDIR(fp->sb.st_mode);
++	    mayopen = S_ISREG(fp->sb.st_mode) || S_ISDIR(fp->sb.st_mode);
+ 	    if (!rc && fd == -1 && mayopen) {
+ 		int flags = O_RDONLY;
+ 		/* Only follow safe symlinks, and never on temporary files */
diff --git a/package/rpm/rpm.hash b/package/rpm/rpm.hash
index dfe50303f7db47e34a42d6d0f17bf2c097455e1c..fd03f062bc7da37519e4bc95da37c70a17ba7d82 100644
--- a/package/rpm/rpm.hash
+++ b/package/rpm/rpm.hash
@@ -1,5 +1,5 @@ 
-# From https://rpm.org/wiki/Releases/4.18.0.html
-sha256  2a17152d7187ab30edf2c2fb586463bdf6388de7b5837480955659e5e9054554  rpm-4.18.0.tar.bz2
+# From https://rpm.org/wiki/Releases/4.18.1.html
+sha256  37f3b42c0966941e2ad3f10fde3639824a6591d07197ba8fd0869ca0779e1f56  rpm-4.18.1.tar.bz2
 
 # Hash for license file
 sha256  171d94d9f1641316bff7f157a903237dc69cdb5fca405fed8c832c76ed8370f9  COPYING
diff --git a/package/rpm/rpm.mk b/package/rpm/rpm.mk
index 38e4ea2160c9e4e2b9bd05a038bca8ff35d1e296..2b289fcc9f8d6972bece4492736277ec5efa209f 100644
--- a/package/rpm/rpm.mk
+++ b/package/rpm/rpm.mk
@@ -5,7 +5,7 @@ 
 ################################################################################
 
 RPM_VERSION_MAJOR = 4.18
-RPM_VERSION = $(RPM_VERSION_MAJOR).0
+RPM_VERSION = $(RPM_VERSION_MAJOR).1
 RPM_SOURCE = rpm-$(RPM_VERSION).tar.bz2
 RPM_SITE = http://ftp.rpm.org/releases/rpm-$(RPM_VERSION_MAJOR).x
 RPM_DEPENDENCIES = \