Refactor Jamfiles to work with release layout

This commit is contained in:
Vinnie Falco
2019-03-24 08:01:37 -07:00
parent 4e82719640
commit 61fcd9ef6f
62 changed files with 193 additions and 195 deletions

View File

@ -1,3 +1,9 @@
Version 238:
* Refactor Jamfiles to work with release layout
--------------------------------------------------------------------------------
Version 237:
* cmake: Use static libs to speed up builds

View File

@ -173,7 +173,7 @@ endif()
#-------------------------------------------------------------------------------
add_definitions (-DBOOST_ASIO_SEPARATE_COMPILATION=1)
add_definitions (-DBOOST_BEAST_SPLIT_COMPILATION=1)
add_definitions (-DBOOST_BEAST_SEPARATE_COMPILATION=1)
GroupSources (test "/")

30
Jamfile
View File

@ -64,13 +64,13 @@ local defines =
<implicit-dependency>/boost//headers
<include>.
<define>BOOST_ALL_NO_LIB=1
<define>BOOST_BEAST_SPLIT_COMPILATION
<define>BOOST_ASIO_SEPARATE_COMPILATION
<define>BOOST_ASIO_NO_DEPRECATED=1
<define>BOOST_ASIO_DISABLE_BOOST_ARRAY=1
<define>BOOST_ASIO_DISABLE_BOOST_BIND=1
<define>BOOST_ASIO_DISABLE_BOOST_DATE_TIME=1
<define>BOOST_ASIO_DISABLE_BOOST_REGEX=1
<define>BOOST_BEAST_SEPARATE_COMPILATION
<define>BOOST_COROUTINES_NO_DEPRECATION_WARNING=1
<toolset>msvc:<cxxflags>"/bigobj"
<toolset>msvc-14.1:<cxxflags>"/permissive-"
@ -96,21 +96,31 @@ local defines =
<target-os>haiku:<library>network
;
lib static_beast
: test/_lib_beast.cpp
lib lib-asio
: test/lib_asio.cpp
: requirements
$(defines)
<include>./test/extras/include
<link>static
$(defines)
: usage-requirements
$(defines)
<include>./test/extras/include
$(defines)
;
lib static_ssl_asio
: test/_lib_ssl.cpp
lib lib-asio-ssl
: test/lib_asio_ssl.cpp
: requirements
<library>/boost/beast//static_beast/<link>static
<link>static
$(defines)
[ ac.check-library /boost/beast//ssl : <library>/boost/beast//ssl/<link>shared : <build>no ]
[ ac.check-library /boost/beast//crypto : <library>/boost/beast//crypto/<link>shared : <build>no ]
: usage-requirements
$(defines)
;
lib lib-beast
: test/lib_beast.cpp
: requirements
<link>static
$(defines)
: usage-requirements
$(defines)
;

View File

@ -11,59 +11,6 @@
[/-----------------------------------------------------------------------------]
[/
* [phrase library..[@/libs/beast/ Beast]:]
'''<emphasis role="bold"><emphasis role="red">BIG Update!!!</emphasis></emphasis>''' The
[@/libs/beast/doc/html/beast/quickref.html reference]
shows a star '''<emphasis role="green">&#9733;</emphasis>''' next to each new item.
* Beast needs your help!
* [@https://github.com/boostorg/beast/wiki/Companies-and-Individuals-Using-Beast Tell Us]
how you or your company use Beast
* Please
[@https://github.com/boostorg/beast/issues/new report]
any bugs, feature requests, or general feedback
* Join the [@https://cppalliance.org/slack/ [*C++ Slack Workspace]] for
free and chat with us in the #beast and #boost channels
* Don't forget to [@https://github.com/boostorg/beast star the repository] \u2b50!
* More tutorials, code like the pros!
* [@/libs/beast/doc/html/beast/using_asio/asio_refresher.html Networking Refresher]
teaches you from the ground up.
* Updated [@/libs/beast/doc/html/beast/using_io/writing_composed_operations/echo.html Asynchronous Echo] example
* Updated [@/libs/beast/doc/html/beast/using_io/writing_composed_operations/detect_ssl.html [*Detect SSL]] composed operation tutorial
* [@/libs/beast/example/websocket/server/chat-multi websocket-chat-multi]
threaded chat server with a JavaScript
[@/libs/beast/example/websocket/server/chat-multi/chat_client.html browser client]
* [@/libs/beast/doc/html/beast/ref/boost__beast__basic_stream.html `basic_stream`] and
[@/libs/beast/doc/html/beast/ref/boost__beast__tcp_stream.html `tcp_stream`] offer:
* Timeouts: `async_read_some`, `async_write_some` complete with
[@/libs/beast/doc/html/beast/ref/boost__beast__error.html `error::timeout`] on expiration!
* Traffic-shaping policies
[@/libs/beast/doc/html/beast/ref/boost__beast__simple_rate_policy.html `simple`] and
[@/libs/beast/doc/html/beast/ref/boost__beast__unlimited_rate_policy.html `unlimited`],
or a user-defined
[@/libs/beast/doc/html/beast/concepts/RatePolicy.html ['RatePolicy]]!
* Put the strand directly on the socket using
[@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1322r0.html P1322R0],
no more `bind_executor` at call sites!
* Base classes
[@/libs/beast/doc/html/beast/ref/boost__beast__async_base.html `async_base`] and
[@/libs/beast/doc/html/beast/ref/boost__beast__stable_async_base.html `stable_async_base`] and
handle all composed operation boilerplate for you.
* [@/libs/beast/doc/html/beast/ref/boost__beast__ssl_stream.html `ssl_stream`] provides a
movable, assignable SSL stream with a flat write optimization.
* All asynchronous operations use Asio's `async_initiate` for efficient integration with Coroutines TS.
* \u26a1 [*['faster compilation]], define `BOOST_BEAST_SPLIT_COMPILATION` and
`#include <`[@/libs/beast/include/boost/beast/src.hpp `boost/beast/src.hpp`]`>`
in one of your .cpp files!
* See the full
[@/libs/beast/doc/html/beast/release_notes.html Release Notes]
for a complete list of changes.
]
[/-----------------------------------------------------------------------------]
[heading Boost 1.70]
[tip

View File

@ -7,6 +7,23 @@
# Official repository: https://github.com/boostorg/beast
#
import testing ;
import ../../config/checks/config : requires ;
project /boost/beast/example
: requirements
[ requires
cxx11_constexpr
cxx11_decltype
cxx11_hdr_tuple
#cxx11_sfinae_expr # Every MSVC fails this
cxx11_template_aliases
cxx11_variadic_templates
]
<library>/boost/beast//lib-asio/<link>static
<library>/boost/beast//lib-beast/<link>static
;
build-project advanced ;
build-project http ;
build-project websocket ;

View File

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

View File

@ -12,5 +12,4 @@ exe advanced-server :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -12,5 +12,4 @@ exe echo-op :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-client-async-ssl :

View File

@ -12,5 +12,4 @@ exe http-client-async :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-client-coro-ssl :

View File

@ -12,6 +12,5 @@ exe http-client-coro :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
<library>/boost/coroutine//boost_coroutine
;

View File

@ -13,5 +13,4 @@ exe http-crawl :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-client-sync-ssl :

View File

@ -12,5 +12,4 @@ exe http-client-sync :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-server-async-ssl :

View File

@ -12,5 +12,4 @@ exe http-server-async :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-server-coro-ssl :

View File

@ -12,6 +12,5 @@ exe http-server-coro :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
<library>/boost/coroutine//boost_coroutine
;

View File

@ -7,15 +7,10 @@
# Official repository: https://github.com/boostorg/beast
#
# VFALCO _GLIBCXX_USE_CXX11_ABI is to work around
# a bug in libg++8 where it attempts to default-construct
# the allocator (even when it is not default constructible)
exe http-server-fast :
http_server_fast.cpp
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
<library>/boost/coroutine//boost_coroutine
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-server-flex :

View File

@ -12,5 +12,4 @@ exe http-server-small :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-server-stackless-ssl :

View File

@ -12,5 +12,4 @@ exe http-server-stackless :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe http-server-sync-ssl :

View File

@ -12,5 +12,4 @@ exe http-server-sync :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-client-async-ssl :

View File

@ -12,5 +12,4 @@ exe websocket-client-async :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-client-coro-ssl :

View File

@ -12,6 +12,5 @@ exe websocket-client-coro :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
<library>/boost/coroutine//boost_coroutine
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-client-sync-ssl :

View File

@ -12,5 +12,4 @@ exe websocket-client-sync :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-server-async-ssl :

View File

@ -12,5 +12,4 @@ exe websocket-server-async :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -16,5 +16,4 @@ exe websocket-chat-multi :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-server-coro-ssl :

View File

@ -12,6 +12,5 @@ exe websocket-server-coro :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
<library>/boost/coroutine//boost_coroutine
;

View File

@ -12,6 +12,5 @@ exe websocket-server-fast :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
<library>/boost/coroutine//boost_coroutine
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-server-stackless-ssl :

View File

@ -12,5 +12,4 @@ exe websocket-server-stackless :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -11,7 +11,7 @@ import ac ;
project
: requirements
[ ac.check-library /boost/beast//static_ssl_asio : <library>/boost/beast//static_ssl_asio/<link>static : <build>no ]
[ ac.check-library /boost/beast//lib-asio-ssl : <library>/boost/beast//lib-asio-ssl/<link>static : <build>no ]
;
exe websocket-server-sync-ssl :

View File

@ -12,5 +12,4 @@ exe websocket-server-sync :
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
<library>/boost/beast//static_beast/<link>static
;

View File

@ -68,9 +68,9 @@ namespace net = boost::asio;
#endif
// Default to a header-only implementation. The user must specifically
// request separate compilation by defining BOOST_BEAST_SPLIT_COMPILATION
// request separate compilation by defining BOOST_BEAST_SEPARATE_COMPILATION
#ifndef BOOST_BEAST_HEADER_ONLY
# ifndef BOOST_BEAST_SPLIT_COMPILATION
# ifndef BOOST_BEAST_SEPARATE_COMPILATION
# define BOOST_BEAST_HEADER_ONLY 1
# endif
#endif

View File

@ -13,7 +13,7 @@
/*
This file is meant to be included once, in a translation unit of
the program, with the macro BOOST_BEAST_SPLIT_COMPILATION defined.
the program, with the macro BOOST_BEAST_SEPARATE_COMPILATION defined.
*/

View File

@ -49,15 +49,11 @@ GroupSources (. "/")
add_library (
lib-test STATIC
${PROJECT_SOURCE_DIR}/include/boost/beast/_experimental/unit_test/main.cpp
${CMAKE_CURRENT_LIST_DIR}/lib_test.cpp
)
set_property(TARGET lib-test PROPERTY FOLDER "static-libs")
add_definitions (-DBOOST_BEAST_INCLUDE_TEST_MAIN)
add_definitions (-DBOOST_ASIO_SEPARATE_COMPILATION)
add_definitions (-DBOOST_BEAST_SPLIT_COMPILATION)
add_subdirectory (beast)
add_subdirectory (bench)
add_subdirectory (doc)

View File

@ -10,10 +10,14 @@
import testing ;
import ../../config/checks/config : requires ;
lib test_main
: $(TEST_MAIN)
lib lib-test
: lib_test.cpp
: requirements
<link>static
$(defines)
: usage-requirements
<include>./extras/include
$(defines)
;
project /boost/beast/test
@ -22,15 +26,15 @@ project /boost/beast/test
cxx11_constexpr
cxx11_decltype
cxx11_hdr_tuple
# cxx11_sfinae_expr # Every MSVC fails this
#cxx11_sfinae_expr # Every MSVC fails this
cxx11_template_aliases
cxx11_variadic_templates
]
<include>./extern
<define>BOOST_BEAST_ALLOW_DEPRECATED
<define>BOOST_BEAST_TESTS
<library>/boost/beast//static_ssl_asio/<link>static
<library>/boost/beast/test//test_main/<link>static
<library>/boost/beast//lib-asio/<link>static
<library>/boost/beast//lib-beast/<link>static
<library>/boost/filesystem//boost_filesystem
<library>/boost/coroutine//boost_coroutine
;

View File

@ -1,22 +0,0 @@
//
// Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot com)
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
//
// Official repository: https://github.com/boostorg/beast
//
// This file is used to build a static library with
// asio and beast definitions, to reduce compilation time.
// BOOST_ASIO_SEPARATE_COMPILATION for asio
#include <boost/asio/impl/src.hpp>
// BOOST_BEAST_SPLIT_COMPILATION for beast
#include <boost/beast/src.hpp>
//#include <boost/beast/ssl/impl/src.hpp>
#ifdef BOOST_BEAST_INCLUDE_TEST_MAIN
#include <boost/beast/_experimental/unit_test/main.cpp>
#endif

View File

@ -17,15 +17,22 @@ local RUN_TESTS ;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) ] ;
RUN_TESTS += [ run $(f)
/boost/beast/test//lib-test
] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests : $(SOURCES) ;
exe fat-tests :
$(SOURCES)
/boost/beast/test//lib-test
;
explicit fat-tests ;
run $(SOURCES) : : : : run-fat-tests ;
run $(SOURCES)
/boost/beast/test//lib-test
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -61,15 +61,22 @@ local RUN_TESTS ;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) ] ;
RUN_TESTS += [ run $(f)
/boost/beast/test//lib-test
] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests : $(SOURCES) ;
exe fat-tests :
$(SOURCES)
/boost/beast/test//lib-test
;
explicit fat-tests ;
run $(SOURCES) : : : : run-fat-tests ;
run $(SOURCES)
/boost/beast/test//lib-test
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -36,15 +36,22 @@ local RUN_TESTS ;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) ] ;
RUN_TESTS += [ run $(f)
/boost/beast/test//lib-test
] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests : $(SOURCES) ;
exe fat-tests :
$(SOURCES)
/boost/beast/test//lib-test
;
explicit fat-tests ;
run $(SOURCES) : : : : run-fat-tests ;
run $(SOURCES)
/boost/beast/test//lib-test
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -15,15 +15,26 @@ local RUN_TESTS ;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) ] ;
RUN_TESTS += [ run $(f)
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests : $(SOURCES) ;
exe fat-tests
:
$(SOURCES)
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
;
explicit fat-tests ;
run $(SOURCES) : : : : run-fat-tests ;
run $(SOURCES)
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -37,15 +37,26 @@ local RUN_TESTS ;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) ] ;
RUN_TESTS += [ run $(f)
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests : $(SOURCES) ;
exe fat-tests
:
$(SOURCES)
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
;
explicit fat-tests ;
run $(SOURCES) : : : : run-fat-tests ;
run $(SOURCES)
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -18,15 +18,27 @@ local RUN_TESTS ;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) $(ZLIB_SOURCES) ] ;
RUN_TESTS += [ run $(f)
$(ZLIB_SOURCES)
/boost/beast/test//lib-test
] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests : $(ZLIB_SOURCES) $(SOURCES) ;
exe fat-tests
:
$(ZLIB_SOURCES)
$(SOURCES)
/boost/beast/test//lib-test
;
explicit fat-tests ;
run $(ZLIB_SOURCES) $(SOURCES) : : : : run-fat-tests ;
run
$(ZLIB_SOURCES)
$(SOURCES)
/boost/beast/test//lib-test
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -12,5 +12,5 @@ alias run-tests :
parser//run-tests
wsload//run-tests
utf8_checker//run-tests
#zlib//run-tests # Not built
#zlib//run-tests # Not built, too slow
;

View File

@ -8,8 +8,8 @@
#
exe bench-buffers :
bench_buffers.cpp
/boost/beast/test//lib-test
;
explicit bench-buffers ;

View File

@ -7,7 +7,12 @@
# Official repository: https://github.com/boostorg/beast
#
run nodejs_parser.cpp bench_parser.cpp : : : : bench-parser ;
run
nodejs_parser.cpp
bench_parser.cpp
/boost/beast/test//lib-test
: : : :
bench-parser ;
explicit bench-parser ;

View File

@ -7,9 +7,9 @@
# Official repository: https://github.com/boostorg/beast
#
exe bench-utf8-checker :
bench_utf8_checker.cpp
exe bench-utf8-checker : bench_utf8_checker.cpp
: requirements
<library>/boost/beast/test//lib-test
;
explicit bench-utf8-checker ;

View File

@ -9,7 +9,7 @@
exe bench-zlib :
$(ZLIB_SOURCES)
deflate_stream.cpp
inflate_stream.cpp
/boost/beast/test//lib-test
;

View File

@ -7,27 +7,12 @@
# Official repository: https://github.com/boostorg/beast
#
alias run-tests :
[ compile core_snippets.cpp ]
[ compile http_snippets.cpp ]
[ run core_1_refresher.cpp ]
[ run core_3_timeouts.cpp ]
[ run core_4_layers.cpp ]
[ run http_10_custom_parser.cpp ]
[ run http_examples.cpp ]
[ run websocket.cpp ]
[ run websocket_1_connecting.cpp ]
[ run websocket_2_handshaking.cpp ]
[ run websocket_3_decorator.cpp ]
[ run websocket_4_messages.cpp ]
[ run websocket_5_control_frames.cpp ]
[ run websocket_6_timeouts.cpp ]
[ run websocket_7_teardown.cpp ]
[ run websocket_8_notes.cpp ]
local libs =
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
;
exe fat-tests :
local SOURCES =
core_1_refresher.cpp
core_3_timeouts.cpp
core_4_layers.cpp
@ -44,8 +29,29 @@ exe fat-tests :
websocket_8_notes.cpp
;
local RUN_TESTS ;
RUN_TESTS +=
[ compile core_snippets.cpp $(libs) ]
[ compile http_snippets.cpp $(libs) ]
;
for local f in $(SOURCES)
{
RUN_TESTS += [ run $(f) $(libs) ] ;
}
alias run-tests : $(RUN_TESTS) ;
exe fat-tests :
$(SOURCES)
$(libs)
;
explicit fat-tests ;
run fat-tests : : : : run-fat-tests ;
run $(SOURCES)
$(libs)
: : : : run-fat-tests ;
explicit run-fat-tests ;

View File

@ -14,13 +14,14 @@ local SOURCES =
local RUN_TESTS ;
local libs =
/boost/beast//lib-asio-ssl
/boost/beast/test//lib-test
;
for local f in $(SOURCES)
{
RUN_TESTS += [ compile $(f) ] ;
RUN_TESTS += [ run $(f) $(libs) ] ;
}
alias run-tests : $(RUN_TESTS) ;
alias build-fat : run-tests ;
explicit build-fat ;

View File

@ -7,9 +7,7 @@
// Official repository: https://github.com/boostorg/beast
//
// This file is used to build a static library with
// asio and beast definitions, to reduce compilation time.
// This file is used to build a static library
// BOOST_ASIO_SEPARATE_COMPILATION for asio::ssl
#include <boost/beast/_experimental/unit_test/main.ipp>
#include <boost/asio/ssl/impl/src.hpp>