Index: boost_1_80_0/boost/system/detail/config.hpp
===================================================================
--- boost_1_80_0.orig/boost/system/detail/config.hpp
+++ boost_1_80_0/boost/system/detail/config.hpp
@@ -13,7 +13,7 @@
 
 // BOOST_SYSTEM_HAS_SYSTEM_ERROR
 
-#if !defined(BOOST_NO_CXX11_HDR_SYSTEM_ERROR) && !defined(BOOST_NO_CXX11_HDR_ATOMIC) && !defined(BOOST_NO_CXX11_HDR_MUTEX)
+#if !defined(BOOST_NO_CXX11_HDR_SYSTEM_ERROR) && !defined(BOOST_NO_CXX11_HDR_ATOMIC)
 # define BOOST_SYSTEM_HAS_SYSTEM_ERROR
 #endif
 
Index: boost_1_80_0/boost/system/detail/error_category_impl.hpp
===================================================================
--- boost_1_80_0.orig/boost/system/detail/error_category_impl.hpp
+++ boost_1_80_0/boost/system/detail/error_category_impl.hpp
@@ -98,7 +98,11 @@ inline char const * error_category::mess
 #if defined(BOOST_SYSTEM_HAS_SYSTEM_ERROR)
 
 #include <boost/system/detail/std_category_impl.hpp>
+
+#ifndef BOOST_NO_CXX11_HDR_MUTEX
 #include <mutex>
+#endif // !BOOST_NO_CXX11_HDR_MUTEX
+
 #include <new>
 
 namespace boost
@@ -106,6 +110,7 @@ namespace boost
 namespace system
 {
 
+#ifndef BOOST_NO_CXX11_HDR_MUTEX
 namespace detail
 {
 
@@ -117,6 +122,7 @@ template<class = void> struct stdcat_mx_
 template<class T> std::mutex stdcat_mx_holder<T>::mx_;
 
 } // namespace detail
+#endif // !BOOST_NO_CXX11_HDR_MUTEX
 
 inline void error_category::init_stdcat() const
 {
@@ -130,7 +136,9 @@ inline void error_category::init_stdcat(
 
 #endif
 
+#ifndef BOOST_NO_CXX11_HDR_MUTEX
     std::lock_guard<std::mutex> lk( boost::system::detail::stdcat_mx_holder<>::mx_ );
+#endif // !BOOST_NO_CXX11_HDR_MUTEX
 
     if( sc_init_.load( std::memory_order_acquire ) == 0 )
     {
