# Boost.Wave: A Standard compliant C++ preprocessor library
#
# Boost Wave Library Build Jamfile
#
# http://www.boost.org/
#
# Copyright (c) 2001-2011 Hartmut Kaiser. 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)
import ../../config/checks/config : requires ;
project boost/wave
: requirements
[ requires
cxx11_constexpr
cxx11_variadic_templates
cxx11_rvalue_references
cxx11_hdr_thread
cxx11_hdr_mutex
cxx11_hdr_regex
]
shared:BOOST_ALL_DYN_LINK=1
static:BOOST_THREAD_USE_LIB=1
msvc:_SCL_SECURE_NO_DEPRECATE
msvc:_CRT_SECURE_NO_DEPRECATE
: source-location ../src
;
SOURCES =
instantiate_cpp_exprgrammar
instantiate_cpp_grammar
instantiate_cpp_literalgrs
instantiate_defined_grammar
instantiate_has_include_grammar
instantiate_predef_macros
instantiate_re2c_lexer
instantiate_re2c_lexer_str
token_ids
wave_config_constant
cpplexer/re2clex/aq
cpplexer/re2clex/cpp_re
;
lib boost_wave
:
$(SOURCES)
../../filesystem/build//boost_filesystem
../../thread/build//boost_thread
;
for local source in $(SOURCES)
{
local requirements ;
# workaround for compiler bug
requirements += 7.1:off ;
requirements += 7.1_stlport4:off ;
if $(source) in cpplexer/re2clex/cpp_re
{
requirements += off ;
}
if $(source) in instantiate_re2c_lexer instantiate_re2c_lexer_str
{
requirements += msvc-8.0:_CRT_SECURE_NO_WARNINGS ;
}
obj $(source) : $(source).cpp : $(requirements) ;
}
boost-install boost_wave ;