Files
beast/Jamfile
T

118 lines
2.8 KiB
Plaintext
Raw Normal View History

2017-07-20 08:01:46 -07:00
#
2017-07-20 13:40:34 -07:00
# Copyright (c) 2013-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
2017-07-20 08:01:46 -07:00
#
# 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)
#
2017-07-20 13:40:34 -07:00
# Official repository: https://github.com/boostorg/beast
#
2017-07-20 08:01:46 -07:00
import os ;
import feature ;
import boost ;
2017-04-20 10:30:24 -07:00
import modules ;
import testing ;
2017-07-20 08:01:46 -07:00
2017-07-27 06:39:07 -07:00
import ../config/checks/config : requires ;
2017-07-25 19:46:53 -07:00
2017-07-20 08:01:46 -07:00
boost.use-project ;
if [ os.name ] = SOLARIS
{
2017-07-28 13:24:39 -07:00
lib socket ;
lib nsl ;
2017-07-20 08:01:46 -07:00
}
else if [ os.name ] = NT
{
2017-07-28 13:24:39 -07:00
lib ws2_32 ;
lib mswsock ;
2017-07-20 08:01:46 -07:00
}
else if [ os.name ] = HPUX
{
2017-07-28 13:24:39 -07:00
lib ipv6 ;
2017-07-20 08:01:46 -07:00
}
else if [ os.name ] = QNXNTO
{
2017-07-28 13:24:39 -07:00
lib socket ;
2017-07-20 08:01:46 -07:00
}
else if [ os.name ] = HAIKU
{
2017-07-28 13:24:39 -07:00
lib network ;
2017-07-20 08:01:46 -07:00
}
if [ os.name ] = NT
{
2017-07-28 13:24:39 -07:00
lib ssl : : <name>ssleay32 ;
lib crypto : : <name>libeay32 ;
2017-07-20 08:01:46 -07:00
}
else
{
2017-07-28 13:24:39 -07:00
lib ssl ;
lib crypto ;
2017-07-20 08:01:46 -07:00
}
variant coverage :
2017-07-20 13:40:34 -07:00
debug
:
2017-07-20 13:40:34 -07:00
<cxxflags>"-msse4.2 --coverage"
<linkflags>"--coverage"
;
2016-04-27 14:58:07 +07:00
2017-07-31 09:34:22 -07:00
variant valgrind :
release
:
2017-07-31 14:09:23 -07:00
<valgrind>on # Boost.Context uses this property
2017-07-31 09:34:22 -07:00
;
2017-05-09 19:36:01 -07:00
variant ubasan
2017-07-28 13:24:39 -07:00
:
2017-05-09 19:36:01 -07:00
release
2017-07-28 13:24:39 -07:00
:
2017-07-29 12:52:39 -07:00
<cxxflags>"-msse4.2 -funsigned-char -fno-omit-frame-pointer -fsanitize=address,undefined -fsanitize-blacklist=libs/beast/build/blacklist.supp"
2017-05-09 19:36:01 -07:00
<linkflags>"-fsanitize=address,undefined"
2017-07-28 13:24:39 -07:00
;
2017-05-09 19:36:01 -07:00
2017-07-27 06:39:07 -07:00
#cxx11_hdr_type_traits
local REQ = [ requires cxx11_variadic_templates cxx11_template_aliases cxx11_decltype cxx11_hdr_tuple ] ;
2017-07-25 19:46:53 -07:00
2017-07-30 17:41:17 -07:00
path-constant TEST_MAIN : test/extras/include/boost/beast/unit_test/main.cpp ;
2017-07-28 13:24:39 -07:00
2017-07-20 08:01:46 -07:00
project beast
2016-04-27 14:58:07 +07:00
: requirements
2017-07-25 19:46:53 -07:00
#$(REQ)
2017-07-05 07:49:48 -07:00
<implicit-dependency>/boost//headers
2016-04-27 14:58:07 +07:00
<include>.
2017-07-30 17:41:17 -07:00
<include>./test/extras/include
2016-04-27 14:58:07 +07:00
#<use>/boost//headers
<library>/boost/system//boost_system
<library>/boost/coroutine//boost_coroutine
2016-04-27 14:58:07 +07:00
<library>/boost/filesystem//boost_filesystem
2017-07-28 13:24:39 -07:00
<link>static
2016-04-27 14:58:07 +07:00
<define>BOOST_ALL_NO_LIB=1
2017-03-03 08:02:49 -05:00
<define>BOOST_COROUTINES_NO_DEPRECATION_WARNING=1
2016-04-27 14:58:07 +07:00
<threading>multi
<runtime-link>shared
<debug-symbols>on
2017-07-20 13:40:34 -07:00
<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
2017-07-27 17:32:08 -07:00
<define>BOOST_ASIO_NO_DEPRECATED=1
2016-04-27 14:58:07 +07:00
<toolset>gcc:<cxxflags>-std=c++11
<toolset>clang:<cxxflags>-std=c++11
2017-06-13 11:53:06 -07:00
<toolset>clang:<cxxflags>-Wrange-loop-analysis
2016-04-27 14:58:07 +07:00
<toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS=1
<toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS=1
2017-07-03 09:09:42 -07:00
<toolset>msvc:<cxxflags>"/permissive- /bigobj"
2017-03-03 08:02:49 -05:00
<toolset>msvc:<variant>release:<cxxflags>"/Ob2 /Oi /Ot"
2016-04-27 14:58:07 +07:00
<os>SOLARIS:<library>socket
<os>SOLARIS:<library>nsl
2016-05-15 16:22:25 -04:00
<os>NT:<define>_WIN32_WINNT=0x0601
2016-04-27 14:58:07 +07:00
<os>NT,<toolset>cw:<library>ws2_32
<os>NT,<toolset>cw:<library>mswsock
<os>NT,<toolset>gcc:<library>ws2_32
<os>NT,<toolset>gcc:<library>mswsock
<os>NT,<toolset>gcc-cygwin:<define>__USE_W32_SOCKETS
: usage-requirements
;