summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEd Tanous <edtanous@google.com>2021-10-10 02:10:52 +0300
committerEd Tanous <ed@tanous.net>2021-10-27 20:45:19 +0300
commit2107fe1809bf71cd72bdaf21e432d96b3dccc630 (patch)
tree5b6fc932f409e1329fb088118828a87aa5de323a /src
parent92409d0e6bd0e5839836ae92b4a74f4dee603074 (diff)
downloadbmcweb-2107fe1809bf71cd72bdaf21e432d96b3dccc630.tar.xz
Enable beast separate compilation
This commit enables separate compilation for asio and beast. Details on how this option works are here: https://www.boost.org/doc/libs/1_77_0/doc/html/boost_asio/using.html This allows separating out the build of the boost components from the rest of the components, which should decrease our intermediate build times in the future as we start breaking things up better. Tested: Code builds. Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I1614bb4ccddebcf1d4858112a25a870378497ecc
Diffstat (limited to 'src')
-rw-r--r--src/boost_asio.cpp1
-rw-r--r--src/boost_asio_ssl.cpp1
-rw-r--r--src/boost_beast.cpp45
3 files changed, 47 insertions, 0 deletions
diff --git a/src/boost_asio.cpp b/src/boost_asio.cpp
new file mode 100644
index 0000000000..eb3b7262c3
--- /dev/null
+++ b/src/boost_asio.cpp
@@ -0,0 +1 @@
+#include <boost/asio/impl/src.hpp> \ No newline at end of file
diff --git a/src/boost_asio_ssl.cpp b/src/boost_asio_ssl.cpp
new file mode 100644
index 0000000000..cb6377da31
--- /dev/null
+++ b/src/boost_asio_ssl.cpp
@@ -0,0 +1 @@
+#include <boost/asio/ssl/impl/src.hpp> \ No newline at end of file
diff --git a/src/boost_beast.cpp b/src/boost_beast.cpp
new file mode 100644
index 0000000000..0c275a63b1
--- /dev/null
+++ b/src/boost_beast.cpp
@@ -0,0 +1,45 @@
+/*
+TODO(ed) This file is largely copied from boost/beast/src.hpp
+Unfortuately the test streams don't compile with -fno-rtti at the moment, so
+those files are commented out
+*/
+
+#define BOOST_BEAST_SOURCE
+
+#include <boost/beast/core/detail/config.hpp>
+
+#include <boost/beast/_experimental/test/impl/error.ipp>
+#include <boost/beast/_experimental/test/impl/fail_count.ipp>
+//#include <boost/beast/_experimental/test/impl/stream.ipp>
+//#include <boost/beast/_experimental/test/detail/stream_state.ipp>
+
+#include <boost/beast/core/detail/base64.ipp>
+#include <boost/beast/core/detail/impl/temporary_buffer.ipp>
+#include <boost/beast/core/detail/sha1.ipp>
+#include <boost/beast/core/impl/error.ipp>
+#include <boost/beast/core/impl/file_posix.ipp>
+#include <boost/beast/core/impl/file_stdio.ipp>
+#include <boost/beast/core/impl/file_win32.ipp>
+#include <boost/beast/core/impl/flat_static_buffer.ipp>
+#include <boost/beast/core/impl/saved_handler.ipp>
+#include <boost/beast/core/impl/static_buffer.ipp>
+#include <boost/beast/core/impl/string.ipp>
+#include <boost/beast/http/detail/basic_parser.ipp>
+#include <boost/beast/http/detail/rfc7230.ipp>
+#include <boost/beast/http/impl/basic_parser.ipp>
+#include <boost/beast/http/impl/error.ipp>
+#include <boost/beast/http/impl/field.ipp>
+#include <boost/beast/http/impl/fields.ipp>
+#include <boost/beast/http/impl/rfc7230.ipp>
+#include <boost/beast/http/impl/status.ipp>
+#include <boost/beast/http/impl/verb.ipp>
+#include <boost/beast/websocket/detail/hybi13.ipp>
+#include <boost/beast/websocket/detail/mask.ipp>
+#include <boost/beast/websocket/detail/pmd_extension.ipp>
+#include <boost/beast/websocket/detail/prng.ipp>
+#include <boost/beast/websocket/detail/service.ipp>
+#include <boost/beast/websocket/detail/utf8_checker.ipp>
+#include <boost/beast/websocket/impl/error.ipp>
+#include <boost/beast/zlib/detail/deflate_stream.ipp>
+#include <boost/beast/zlib/detail/inflate_stream.ipp>
+#include <boost/beast/zlib/impl/error.ipp>