mirror of
https://github.com/boostorg/boost.git
synced 2025-04-04 21:15:01 +00:00
Merge outstanding develop changes (as appropriate).
This commit is contained in:
parent
c3864a8035
commit
51e693134f
9 changed files with 122 additions and 32 deletions
32
Jamroot
32
Jamroot
|
@ -139,7 +139,7 @@ boostcpp.set-version $(BOOST_VERSION) ;
|
|||
use-project /boost/architecture : libs/config/checks/architecture ;
|
||||
|
||||
local all-headers =
|
||||
[ MATCH .*libs/(.*)/include/boost : [ glob libs/*/include/boost ] ] ;
|
||||
[ MATCH .*libs/(.*)/include/boost : [ glob libs/*/include/boost libs/*/*/include/boost ] ] ;
|
||||
|
||||
for dir in $(all-headers)
|
||||
{
|
||||
|
@ -147,18 +147,9 @@ for dir in $(all-headers)
|
|||
explicit $(dir)-headers ;
|
||||
}
|
||||
|
||||
local numeric-headers =
|
||||
[ MATCH .*libs/numeric/(.*)/include/boost : [ glob libs/*/*/include/boost ] ] ;
|
||||
|
||||
for dir in $(numeric-headers)
|
||||
{
|
||||
link-directory numeric-$(dir)-headers : libs/numeric/$(dir)/include/boost : <location>. ;
|
||||
explicit numeric-$(dir)-headers ;
|
||||
}
|
||||
|
||||
if $(all-headers)
|
||||
{
|
||||
constant BOOST_MODULARLAYOUT : $(all-headers) $(numeric-headers) ;
|
||||
constant BOOST_MODULARLAYOUT : $(all-headers) ;
|
||||
}
|
||||
|
||||
project boost
|
||||
|
@ -173,9 +164,6 @@ project boost
|
|||
# Used to encode variant in target name. See the 'tag' rule below.
|
||||
<tag>@$(__name__).tag
|
||||
<conditional>@handle-static-runtime
|
||||
# The standard library Sun compilers use by default has no chance
|
||||
# of working with Boost. Override it.
|
||||
<toolset>sun:<stdlib>sun-stlport
|
||||
# Comeau does not support shared lib
|
||||
<toolset>como:<link>static
|
||||
<toolset>como-linux:<define>_GNU_SOURCE=1
|
||||
|
@ -243,7 +231,10 @@ for local l in $(all-libraries)
|
|||
}
|
||||
}
|
||||
|
||||
alias headers : $(all-headers)-headers numeric-$(numeric-headers)-headers : : : <include>. ;
|
||||
# Log has an additional target
|
||||
explicit-alias log_setup : libs/log/build//boost_log_setup ;
|
||||
|
||||
alias headers : $(all-headers)-headers : : : <include>. ;
|
||||
explicit headers ;
|
||||
|
||||
# Make project ids of all libraries known.
|
||||
|
@ -252,8 +243,15 @@ for local l in $(all-libraries)
|
|||
use-project /boost/$(l) : libs/$(l)/build ;
|
||||
}
|
||||
|
||||
use-project /boost/tools/inspect : tools/inspect/build ;
|
||||
use-project /boost/libs/wave/tool : libs/wave/tool/build ;
|
||||
if [ path.exists $(BOOST_ROOT)/tools/inspect ]
|
||||
{
|
||||
use-project /boost/tools/inspect : tools/inspect/build ;
|
||||
}
|
||||
|
||||
if [ path.exists $(BOOST_ROOT)/libs/wave/tool ]
|
||||
{
|
||||
use-project /boost/libs/wave/tool : libs/wave/tool/build ;
|
||||
}
|
||||
|
||||
# This rule should be called from libraries' Jamfiles and will create two
|
||||
# targets, "install" and "stage", that will install or stage that library. The
|
||||
|
|
47
boostcpp.jam
47
boostcpp.jam
|
@ -210,8 +210,48 @@ rule make-unversioned-links ( project name ? : property-set : sources * )
|
|||
return $(result) ;
|
||||
}
|
||||
|
||||
rule filtered-target ( name : message + : sources + : requirements * )
|
||||
{
|
||||
message $(name)-message : warning: $(message) ;
|
||||
alias $(name) : $(sources) : $(requirements) ;
|
||||
alias $(name) : $(name)-message ;
|
||||
|
||||
local p = [ project.current ] ;
|
||||
$(p).mark-target-as-explicit $(name) ;
|
||||
$(p).mark-target-as-explicit $(name)-message ;
|
||||
}
|
||||
|
||||
rule declare_install_and_stage_proper_targets ( libraries * : headers * )
|
||||
{
|
||||
local p = [ project.current ] ;
|
||||
for local l in $(libraries)
|
||||
{
|
||||
if $(l) = locale
|
||||
{
|
||||
filtered-target $(l)-for-install :
|
||||
Skipping Boost.Locale library with threading=single. :
|
||||
libs/$(l)/build : <threading>multi ;
|
||||
}
|
||||
else if $(l) = wave
|
||||
{
|
||||
filtered-target $(l)-for-install :
|
||||
Skipping Boost.Wave library with threading=single. :
|
||||
libs/$(l)/build : <threading>multi ;
|
||||
}
|
||||
else if $(l) = thread
|
||||
{
|
||||
filtered-target $(l)-for-install :
|
||||
Skipping Boost.Thread library with threading=single. :
|
||||
libs/$(l)/build : <threading>multi ;
|
||||
}
|
||||
else
|
||||
{
|
||||
alias $(l)-for-install : libs/$(l)/build ;
|
||||
$(p).mark-target-as-explicit $(l)-for-install ;
|
||||
}
|
||||
}
|
||||
local library-targets = $(libraries)-for-install ;
|
||||
|
||||
install-requirements = <install-source-root>$(BOOST_ROOT)/boost ;
|
||||
|
||||
if $(layout-versioned)
|
||||
|
@ -239,14 +279,14 @@ rule declare_install_and_stage_proper_targets ( libraries * : headers * )
|
|||
package.install install-proper
|
||||
: $(install-requirements) <install-no-version-symlinks>on
|
||||
:
|
||||
: libs/$(libraries)/build
|
||||
: $(libraries)-for-install
|
||||
: $(headers)
|
||||
;
|
||||
$(p).mark-target-as-explicit install-proper ;
|
||||
|
||||
# Install just library.
|
||||
install stage-proper
|
||||
: libs/$(libraries)/build
|
||||
: $(libraries)-for-install
|
||||
: <location>$(stage-locate)/lib
|
||||
<install-dependencies>on <install-type>LIB
|
||||
<install-no-version-symlinks>on
|
||||
|
@ -461,13 +501,14 @@ rule post-build ( ok ? )
|
|||
{
|
||||
if $(ok)
|
||||
{
|
||||
local include-path = [ path.native $(BOOST_ROOT) ] ;
|
||||
ECHO "
|
||||
|
||||
The Boost C++ Libraries were successfully built!
|
||||
|
||||
The following directory should be added to compiler include paths:
|
||||
|
||||
$(BOOST_ROOT)
|
||||
$(include-path)
|
||||
|
||||
The following directory should be added to linker library paths:
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ goto :bjam_failure
|
|||
:bjam_built
|
||||
|
||||
REM Ideally, we should obtain the toolset that build.bat has
|
||||
REM guessed. However, it uses setlocal at the start and does
|
||||
REM guessed. However, it uses setlocal at the start and does not
|
||||
REM export BOOST_JAM_TOOLSET, and I don't know how to do that
|
||||
REM properly. Default to msvc for now.
|
||||
set toolset=msvc
|
||||
|
@ -67,7 +67,7 @@ goto :end
|
|||
|
||||
ECHO.
|
||||
ECHO Failed to build Boost.Build engine.
|
||||
ECHO Please consult bootstrap.log for furter diagnostics.
|
||||
ECHO Please consult bootstrap.log for further diagnostics.
|
||||
ECHO.
|
||||
ECHO You can try to obtain a prebuilt binary from
|
||||
ECHO.
|
||||
|
|
24
bootstrap.sh
24
bootstrap.sh
|
@ -21,6 +21,14 @@ PYTHON_VERSION=
|
|||
PYTHON_ROOT=
|
||||
ICU_ROOT=
|
||||
|
||||
# Handle case where builtin shell version of echo command doesn't
|
||||
# support -n. Use the installed echo executable if there is one
|
||||
# rather than builtin version to ensure -n is supported.
|
||||
ECHO=`which echo`
|
||||
if test "x$ECHO" = x; then
|
||||
ECHO=echo
|
||||
fi
|
||||
|
||||
# Internal flags
|
||||
flag_no_python=
|
||||
flag_icu=
|
||||
|
@ -213,7 +221,7 @@ rm -f config.log
|
|||
|
||||
# Build bjam
|
||||
if test "x$BJAM" = x; then
|
||||
echo -n "Building Boost.Build engine with toolset $TOOLSET... "
|
||||
$ECHO -n "Building Boost.Build engine with toolset $TOOLSET... "
|
||||
pwd=`pwd`
|
||||
(cd "$my_dir/tools/build/src/engine" && ./build.sh "$TOOLSET") > bootstrap.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
|
@ -270,20 +278,20 @@ fi
|
|||
|
||||
if test "x$flag_no_python" = x; then
|
||||
if test "x$PYTHON_VERSION" = x; then
|
||||
echo -n "Detecting Python version... "
|
||||
$ECHO -n "Detecting Python version... "
|
||||
PYTHON_VERSION=`$PYTHON -c "import sys; print (\"%d.%d\" % (sys.version_info[0], sys.version_info[1]))"`
|
||||
echo $PYTHON_VERSION
|
||||
fi
|
||||
|
||||
if test "x$PYTHON_ROOT" = x; then
|
||||
echo -n "Detecting Python root... "
|
||||
PYTHON_ROOT=`$PYTHON -c "import sys; print sys.prefix"`
|
||||
$ECHO -n "Detecting Python root... "
|
||||
PYTHON_ROOT=`$PYTHON -c "import sys; print(sys.prefix)"`
|
||||
echo $PYTHON_ROOT
|
||||
fi
|
||||
fi
|
||||
|
||||
# Configure ICU
|
||||
echo -n "Unicode/ICU support for Boost.Regex?... "
|
||||
$ECHO -n "Unicode/ICU support for Boost.Regex?... "
|
||||
if test "x$flag_icu" != xno; then
|
||||
if test "x$ICU_ROOT" = x; then
|
||||
COMMON_ICU_PATHS="/usr /usr/local /sw"
|
||||
|
@ -345,7 +353,11 @@ if test "x$flag_no_python" = x; then
|
|||
cat >> project-config.jam <<EOF
|
||||
|
||||
# Python configuration
|
||||
using python : $PYTHON_VERSION : $PYTHON_ROOT ;
|
||||
import python ;
|
||||
if ! [ python.configured ]
|
||||
{
|
||||
using python : $PYTHON_VERSION : $PYTHON_ROOT ;
|
||||
}
|
||||
EOF
|
||||
fi
|
||||
|
||||
|
|
|
@ -56,6 +56,7 @@
|
|||
<xi:include href="lexical_cast.xml"/>
|
||||
<xi:include href="lockfree.xml"/>
|
||||
<xi:include href="move.xml"/>
|
||||
<xi:include href="../../libs/multi_array/doc/xml/bbref.xml"/>
|
||||
<xi:include href="mpi.xml"/>
|
||||
<xi:include href="../../libs/program_options/doc/program_options.xml"/>
|
||||
<xi:include href="property_tree.xml"/>
|
||||
|
|
|
@ -94,7 +94,7 @@ property_map Douglas Gregor <dgregor -at- cs.indiana.edu>
|
|||
property_tree Sebastian Redl <sebastian.redl -at- getdesigned.at>
|
||||
proto Eric Niebler <eric -at- boostpro.com>
|
||||
ptr_container Thorsten Ottosen <nesotto -at- cs.auc.dk>
|
||||
python Ralf Grosse-Kunstleve <rwgrosse-kunstleve -at- lbl.gov>, Ravi Rajagopal <lists_ravi -at- lavabit.com>
|
||||
python Stefan Seefeld <stefan -at- seefeld dot name>
|
||||
random Steven Watanabe <watanabesj -at- gmail.com>
|
||||
range Neil Groves <neilgroves -at- googlemail.com>, Nathan Ridge <zeratul976 -at- hotmail.com>
|
||||
ratio Vicente J. Botet Escriba <vicente.botet -at- wanadoo.fr>
|
||||
|
|
|
@ -63,6 +63,7 @@ run-tests libs :
|
|||
circular_buffer/test # test-suite circular_buffer
|
||||
concept_check # test-suite concept_check
|
||||
config/test # test-suite config
|
||||
container/bench # test-suite container benchmarks
|
||||
container/example # test-suite container_example
|
||||
container/test # test-suite container_test
|
||||
context/test # test-suite context
|
||||
|
|
|
@ -700,7 +700,6 @@
|
|||
<toolset name="msvc-10.0*"/>
|
||||
<toolset name="msvc-11.0*"/>
|
||||
<toolset name="msvc-12.0*"/>
|
||||
<toolset name="msvc-14.0*"/>
|
||||
<toolset name="msvc-7.1*"/>
|
||||
<toolset name="vacpp-10.1"/>
|
||||
<toolset name="qcc-4*"/>
|
||||
|
@ -716,8 +715,11 @@
|
|||
<mark-failure>
|
||||
<toolset name="vacpp-*"/>
|
||||
<toolset name="vacpp"/>
|
||||
<toolset name="msvc-8.0"/>
|
||||
<toolset name="msvc-9.0"/>
|
||||
<toolset name="msvc-9.0~stlport5.2"/>
|
||||
<toolset name="msvc-9.0~wm5~stlport5.2"/>
|
||||
<toolset name="msvc-10.0"/>
|
||||
<toolset name="intel-darwin-11.*"/>
|
||||
<toolset name="intel-darwin-12.0"/>
|
||||
<toolset name="qcc-4*"/>
|
||||
|
@ -2034,6 +2036,28 @@
|
|||
|
||||
<!-- geometry -->
|
||||
<library name="geometry">
|
||||
<test name="algorithms_*" category="Algorithms">
|
||||
</test>
|
||||
<test name="arithmetic_*" category="Arithmetic">
|
||||
</test>
|
||||
<test name="concepts_*" category="Concepts">
|
||||
</test>
|
||||
<test name="core_*" category="Core">
|
||||
</test>
|
||||
<test name="geometries_*" category="Geometries">
|
||||
</test>
|
||||
<test name="io_*" category="IO">
|
||||
</test>
|
||||
<test name="iterators_*" category="Iterators">
|
||||
</test>
|
||||
<test name="policies_*" category="Policies">
|
||||
</test>
|
||||
<test name="strategies_*" category="Strategies">
|
||||
</test>
|
||||
<test name="util_*" category="Util">
|
||||
</test>
|
||||
<test name="views_*" category="Views">
|
||||
</test>
|
||||
<mark-unusable>
|
||||
<toolset name="borland-*"/>
|
||||
<toolset name="sun-5.10"/>
|
||||
|
@ -3059,6 +3083,17 @@ for more information.
|
|||
</pre>
|
||||
</note>
|
||||
</mark-expected-failures>
|
||||
<mark-expected-failures>
|
||||
<test name="optional_test_ref_convert_assign_const_int"/>
|
||||
<toolset name="msvc-8.0"/>
|
||||
<toolset name="msvc-9.0"/>
|
||||
<toolset name="msvc-10.0"/>
|
||||
<toolset name="msvc-11.0"/>
|
||||
<toolset name="msvc-12.0"/>
|
||||
<note author="Andrzej Krzemienski" id="optional-const-int-ref-assign-bug">
|
||||
<p>This is a compiler bug: it sometimes creates an illegal temporary object.</p>
|
||||
</note>
|
||||
</mark-expected-failures>
|
||||
<mark-expected-failures>
|
||||
<test name="optional_test_ref"/>
|
||||
<toolset name="msvc-6.5*"/>
|
||||
|
@ -5753,7 +5788,9 @@ This platform doesn't supports Boost.Container.
|
|||
<toolset name="gcc-4.2*"/>
|
||||
<toolset name="gcc-4.3*"/>
|
||||
<toolset name="gcc-4.4*"/>
|
||||
<toolset name="gcc-4.5*"/>
|
||||
<!-- gcc-4.5+ is passing the test -->
|
||||
<toolset name="intel-linux"/>
|
||||
<toolset name="vacpp"/>
|
||||
<toolset name="gcc-mingw-3.*"/>
|
||||
<toolset name="gcc-mingw-4.0*"/>
|
||||
<toolset name="gcc-mingw-4.1*"/>
|
||||
|
|
|
@ -21,7 +21,7 @@ TOOLS =
|
|||
bcp//bcp
|
||||
inspect/build//inspect
|
||||
quickbook//quickbook
|
||||
wave/build//wave
|
||||
/boost/libs/wave/tool//wave
|
||||
;
|
||||
|
||||
install dist-bin
|
||||
|
|
Loading…
Add table
Reference in a new issue