libboost176/libboost-1.76.0-arm-upstream-fix-build.patch

49 lines
1.6 KiB
Diff

From 6064875bff2e52ba63f01911eb4deb79259c5e3b Mon Sep 17 00:00:00 2001
From: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
Date: Thu, 3 Jun 2021 23:10:37 +0100
Subject: [PATCH] Fixes wrong type for mutex in regex v5
With the Boost.Regex to ehader-only library, the declaration
of a mutex that should have been changed from boost::static_mutex
to std::mutex was left behind. This was preventing regex from
being built for older arm platforms [1]
[1]: https://github.com/openwrt/packages/issues/15725
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
---
include/boost/regex/v5/mem_block_cache.hpp | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/include/boost/regex/v5/mem_block_cache.hpp b/include/boost/regex/v5/mem_block_cache.hpp
index 0af4eae18..eb3ec776c 100644
--- a/include/boost/regex/v5/mem_block_cache.hpp
+++ b/include/boost/regex/v5/mem_block_cache.hpp
@@ -85,10 +85,10 @@ struct mem_block_node
struct mem_block_cache
{
// this member has to be statically initialsed:
- mem_block_node* next;
- unsigned cached_blocks;
+ mem_block_node* next { nullptr };
+ unsigned cached_blocks { 0 };
#ifdef BOOST_HAS_THREADS
- boost::static_mutex mut;
+ std::mutex mut;
#endif
~mem_block_cache()
@@ -133,11 +133,7 @@ struct mem_block_cache
}
static mem_block_cache& instance()
{
-#ifdef BOOST_HAS_THREADS
- static mem_block_cache block_cache = { 0, 0, BOOST_STATIC_MUTEX_INIT, };
-#else
- static mem_block_cache block_cache = { 0, 0, };
-#endif
+ static mem_block_cache block_cache;
return block_cache;
}
};