summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meson.build2
-rw-r--r--src/boost_asio.cpp21
2 files changed, 23 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index 7bc594b132..dd8eb81855 100644
--- a/meson.build
+++ b/meson.build
@@ -244,9 +244,11 @@ cxx.get_supported_arguments([
'-DBOOST_ASIO_SEPARATE_COMPILATION',
'-DBOOST_BEAST_SEPARATE_COMPILATION',
'-DBOOST_EXCEPTION_DISABLE',
+ '-DBOOST_NO_EXCEPTIONS',
'-DBOOST_URL_NO_SOURCE_LOCATION',
'-DJSON_NOEXCEPTION',
'-DOPENSSL_NO_FILENAMES',
+ '-DSDBUSPLUS_DISABLE_BOOST_COROUTINES',
]),
language : 'cpp')
diff --git a/src/boost_asio.cpp b/src/boost_asio.cpp
index bf00c8ff26..53f2fd6945 100644
--- a/src/boost_asio.cpp
+++ b/src/boost_asio.cpp
@@ -1 +1,22 @@
+#include "logging.hpp"
+
#include <boost/asio/impl/src.hpp>
+#include <boost/assert/source_location.hpp>
+
+#include <exception>
+
+namespace boost
+{
+void throw_exception(const std::exception& e)
+{
+ BMCWEB_LOG_CRITICAL << "Boost exception thrown " << e.what();
+ std::terminate();
+}
+
+void throw_exception(const std::exception& e, const source_location& loc)
+{
+ BMCWEB_LOG_CRITICAL << "Boost exception thrown " << e.what() << " from "
+ << loc;
+ std::terminate();
+}
+} // namespace boost