From 51e693134f5c354f2694fe89d14421c85bfacf31 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Wed, 5 Aug 2015 10:20:35 -0500 Subject: Merge outstanding develop changes (as appropriate). --- boostcpp.jam | 47 ++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 44 insertions(+), 3 deletions(-) (limited to 'boostcpp.jam') diff --git a/boostcpp.jam b/boostcpp.jam index a964caf417..f45d12ef2f 100644 --- a/boostcpp.jam +++ b/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 : multi ; + } + else if $(l) = wave + { + filtered-target $(l)-for-install : + Skipping Boost.Wave library with threading=single. : + libs/$(l)/build : multi ; + } + else if $(l) = thread + { + filtered-target $(l)-for-install : + Skipping Boost.Thread library with threading=single. : + libs/$(l)/build : 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 = $(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) 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 : $(stage-locate)/lib on LIB 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: -- cgit v1.2.1