[Buildroot] [git commit] package/reproc: fix build with gcc >= 13

Thomas Petazzoni thomas.petazzoni at bootlin.com
Wed Nov 1 16:51:55 UTC 2023


commit: https://git.buildroot.net/buildroot/commit/?id=b652a546eb4a25b396a5d6b305df4b0003e3f214
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

Fix the following build failure with gcc >= 13:

In file included from /home/buildroot/autobuild/instance-1/output-1/build/reproc-14.2.4/reproc++/src/reproc.cpp:1:
/home/buildroot/autobuild/instance-1/output-1/build/reproc-14.2.4/reproc++/include/reproc++/reproc.hpp:95:5: error: declaration of 'reproc::options::<unnamed struct> reproc::options::env' changes meaning of 'env' [-Wchanges-meaning]
   95 |   } env = {};
      |     ^~~
/home/buildroot/autobuild/instance-1/output-1/build/reproc-14.2.4/reproc++/include/reproc++/reproc.hpp:91:5: note: used here to mean 'class reproc::env'
   91 |     env::type behavior;
      |     ^~~

Fixes:
 - http://autobuild.buildroot.org/results/11feca3698154c255938ab3b25a34429135c31f8

Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
---
 .../0001-reproc-Try-to-fix-gcc-13-build.patch      | 37 ++++++++++++++++++++++
 package/reproc/0002-Fix-gcc-13-build.patch         | 28 ++++++++++++++++
 2 files changed, 65 insertions(+)

diff --git a/package/reproc/0001-reproc-Try-to-fix-gcc-13-build.patch b/package/reproc/0001-reproc-Try-to-fix-gcc-13-build.patch
new file mode 100644
index 0000000000..22b21bcbc7
--- /dev/null
+++ b/package/reproc/0001-reproc-Try-to-fix-gcc-13-build.patch
@@ -0,0 +1,37 @@
+From 0b23d88894ccedde04537fa23ea55cb2f8365342 Mon Sep 17 00:00:00 2001
+From: Daan De Meyer <daan.j.demeyer at gmail.com>
+Date: Sat, 18 Mar 2023 19:38:19 +0100
+Subject: [PATCH] reproc++: Try to fix gcc 13 build
+
+Upstream: https://github.com/DaanDeMeyer/reproc/commit/0b23d88894ccedde04537fa23ea55cb2f8365342
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
+---
+ reproc++/include/reproc++/reproc.hpp | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/reproc++/include/reproc++/reproc.hpp b/reproc++/include/reproc++/reproc.hpp
+index ab6f1394..e883ecec 100644
+--- a/reproc++/include/reproc++/reproc.hpp
++++ b/reproc++/include/reproc++/reproc.hpp
+@@ -88,7 +88,7 @@ struct redirect {
+ 
+ struct options {
+   struct {
+-    env::type behavior;
++    enum env::type behavior;
+     /*! Implicitly converts from any STL container of string pairs to the
+     environment format expected by `reproc_start`. */
+     class env extra;
+@@ -97,9 +97,9 @@ struct options {
+   const char *working_directory = nullptr;
+ 
+   struct {
+-    redirect in;
+-    redirect out;
+-    redirect err;
++    struct redirect in;
++    struct redirect out;
++    struct redirect err;
+     bool parent;
+     bool discard;
+     FILE *file;
diff --git a/package/reproc/0002-Fix-gcc-13-build.patch b/package/reproc/0002-Fix-gcc-13-build.patch
new file mode 100644
index 0000000000..3e06a2a396
--- /dev/null
+++ b/package/reproc/0002-Fix-gcc-13-build.patch
@@ -0,0 +1,28 @@
+From 9f399675b821e175f85ac3ee6e3fd2e6056573eb Mon Sep 17 00:00:00 2001
+From: Daan De Meyer <daan.j.demeyer at gmail.com>
+Date: Fri, 21 Apr 2023 19:36:45 +0200
+Subject: [PATCH] Fix gcc 13 build
+
+Upstream: https://github.com/DaanDeMeyer/reproc/commit/9f399675b821e175f85ac3ee6e3fd2e6056573eb
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
+---
+ reproc++/include/reproc++/reproc.hpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/reproc++/include/reproc++/reproc.hpp b/reproc++/include/reproc++/reproc.hpp
+index b52f495e..7b614a94 100644
+--- a/reproc++/include/reproc++/reproc.hpp
++++ b/reproc++/include/reproc++/reproc.hpp
+@@ -88,10 +88,10 @@ struct redirect {
+ 
+ struct options {
+   struct {
+-    enum env::type behavior;
++    reproc::env::type behavior;
+     /*! Implicitly converts from any STL container of string pairs to the
+     environment format expected by `reproc_start`. */
+-    class env extra;
++    reproc::env extra;
+   } env = {};
+ 
+   const char *working_directory = nullptr;



More information about the buildroot mailing list