Add support for modular build structure. (#2905)

* Use beast exclusive valgrind feature.

* Make the library modular usable.

* Switch to library requirements instead of source. As source puts extra source in install targets.

* Add Beast root dir for includes. As some tests refer to files relative to that.

* Replace relative docca refs with project based.

* Avoid mtuliple openssl configurations.

* Always declare openssl. If it's empty and duplicate it will be ignored.

* Add missing import-search for cconfig/predef checks.

* Add requires-b2 check to top-level build file.

* Bump B2 require to 5.2

* Update copyright dates.

* Move inter-lib dependencies to a project variable and into the build targets.

* Update build deps.

* Update build deps.

* The http/client/body example uses the source header from json instead of the linked library.
This commit is contained in:
René Ferdinand Rivera Morell
2024-09-01 02:56:02 -05:00
committed by GitHub
parent aefc564fa7
commit 2bda7870fe
11 changed files with 203 additions and 152 deletions

View File

@@ -8,7 +8,8 @@
#
import testing ;
import ../../config/checks/config : requires ;
import-search /boost/config/checks ;
import config : requires ;
project /boost/beast/example
: requirements
@@ -22,6 +23,7 @@ project /boost/beast/example
]
<library>/boost/beast//lib-asio/<link>static
<boost.beast.separate-compilation>on:<library>/boost/beast//lib-beast/<link>static
<include>..
;
build-project advanced ;

View File

@@ -12,6 +12,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
<library>/boost/scope//boost_scope
;
exe advanced-server-flex-awaitable :

View File

@@ -11,4 +11,5 @@ exe json_client : json_client.cpp
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<use>/boost/json//boost_json
;