summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDr. Christian Tacke <58549698+ChristianTackeGSI@users.noreply.github.com>2020-04-29 19:53:58 +0200
committerGitHub <noreply@github.com>2020-04-29 12:53:58 -0500
commit0385e8477571d81b36cfb2ce35ad9cd70b36164a (patch)
tree3a08e5de6c3af89d6e5bde720f51d40577a91ce2
parentb6b44948b8624b6e23484a8cb59f8e325ef76e37 (diff)
downloadspack-0385e8477571d81b36cfb2ce35ad9cd70b36164a.tar.gz
spack-0385e8477571d81b36cfb2ce35ad9cd70b36164a.tar.bz2
spack-0385e8477571d81b36cfb2ce35ad9cd70b36164a.tar.xz
spack-0385e8477571d81b36cfb2ce35ad9cd70b36164a.zip
boost: Patch for boostorg/process/issues/116 (#16371)
Patch for "Unable to compile code using boost/process.hpp" See: https://github.com/boostorg/process/issues/116
-rw-r--r--var/spack/repos/builtin/packages/boost/1.72_boost_process.patch48
-rw-r--r--var/spack/repos/builtin/packages/boost/package.py5
2 files changed, 53 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/boost/1.72_boost_process.patch b/var/spack/repos/builtin/packages/boost/1.72_boost_process.patch
new file mode 100644
index 0000000000..54cd2ae671
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/1.72_boost_process.patch
@@ -0,0 +1,48 @@
+From 6a4d2ff72114ef47c7afaf92e1042aca3dfa41b0 Mon Sep 17 00:00:00 2001
+From: Klemens David Morgenstern <klemens.morgenstern@gmx.net>
+Date: Fri, 22 Nov 2019 14:03:22 +0800
+Subject: [PATCH] added typedef executor_type;
+
+---
+ include/boost/process/async_pipe.hpp | 2 ++
+ include/boost/process/detail/posix/async_pipe.hpp | 1 +
+ include/boost/process/detail/windows/async_pipe.hpp | 1 +
+ 3 files changed, 4 insertions(+)
+
+diff --git a/include/boost/process/async_pipe.hpp b/include/boost/process/async_pipe.hpp
+index 101fe1d59..a562432c0 100644
+--- a/include/boost/process/async_pipe.hpp
++++ b/include/boost/process/async_pipe.hpp
+@@ -47,6 +47,8 @@ class async_pipe
+ */
+ typedef platform_specific handle_type;
+
++ typedef typename handle_type::executor_type executor_type;
++
+ /** Construct a new async_pipe, does automatically open the pipe.
+ * Initializes source and sink with the same io_context.
+ * @note Windows creates a named pipe here, where the name is automatically generated.
+diff --git a/include/boost/process/detail/posix/async_pipe.hpp b/include/boost/process/detail/posix/async_pipe.hpp
+index 725a07890..a82c057b9 100644
+--- a/include/boost/process/detail/posix/async_pipe.hpp
++++ b/include/boost/process/detail/posix/async_pipe.hpp
+@@ -23,6 +23,7 @@ class async_pipe
+ public:
+ typedef int native_handle_type;
+ typedef ::boost::asio::posix::stream_descriptor handle_type;
++ typedef typename handle_type::executor_type executor_type;
+
+ inline async_pipe(boost::asio::io_context & ios) : async_pipe(ios, ios) {}
+
+diff --git a/include/boost/process/detail/windows/async_pipe.hpp b/include/boost/process/detail/windows/async_pipe.hpp
+index 06d5f2d85..0b447f9b8 100644
+--- a/include/boost/process/detail/windows/async_pipe.hpp
++++ b/include/boost/process/detail/windows/async_pipe.hpp
+@@ -48,6 +48,7 @@ class async_pipe
+ public:
+ typedef ::boost::winapi::HANDLE_ native_handle_type;
+ typedef ::boost::asio::windows::stream_handle handle_type;
++ typedef typename handle_type::executor_type executor_type;
+
+ async_pipe(boost::asio::io_context & ios) : async_pipe(ios, ios, make_pipe_name(), true) {}
+ async_pipe(boost::asio::io_context & ios_source, boost::asio::io_context & ios_sink)
diff --git a/var/spack/repos/builtin/packages/boost/package.py b/var/spack/repos/builtin/packages/boost/package.py
index cc223d2f7e..7baff3f28c 100644
--- a/var/spack/repos/builtin/packages/boost/package.py
+++ b/var/spack/repos/builtin/packages/boost/package.py
@@ -209,6 +209,11 @@ class Boost(Package):
patch('darwin_clang_version.patch', level=0,
when='@1.56.0:1.72.0 platform=darwin')
+ # Fix: "Unable to compile code using boost/process.hpp"
+ # See: https://github.com/boostorg/process/issues/116
+ # Patch: https://github.com/boostorg/process/commit/6a4d2ff72114ef47c7afaf92e1042aca3dfa41b0.patch
+ patch('1.72_boost_process.patch', level=2, when='@1.72.0')
+
# Fix the bootstrap/bjam build for Cray
patch('bootstrap-path.patch', when='@1.39.0: platform=cray')