$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: ghost_at_[hidden]
Date: 2007-09-11 15:16:09
Author: vladimir_prus
Date: 2007-09-11 15:16:06 EDT (Tue, 11 Sep 2007)
New Revision: 39194
URL: http://svn.boost.org/trac/boost/changeset/39194
Log:
Don't try to apply --build-dir to standalone projects.
Fixes build_dir test failure on linux.
Text files modified: 
   trunk/tools/build/v2/build/project.jam |     7 ++++++-                                 
   trunk/tools/build/v2/test/build_dir.py |     4 +++-                                    
   2 files changed, 9 insertions(+), 2 deletions(-)
Modified: trunk/tools/build/v2/build/project.jam
==============================================================================
--- trunk/tools/build/v2/build/project.jam	(original)
+++ trunk/tools/build/v2/build/project.jam	2007-09-11 15:16:06 EDT (Tue, 11 Sep 2007)
@@ -882,7 +882,12 @@
         
         if $(global-build-dir)
         {                
-            if [ $(attributes).get location ]  = [ $(attributes).get project-root ]
+            local location = [ $(attributes).get location ] ;
+            # Project with empty location is 'standalone' project, like
+            # user-config, or qt.  It has no build dir.
+            # If we try to set build dir for user-config, we'll then
+            # try to inherit it, with either weird, or wrong consequences.
+            if $(location) && $(location) = [ $(attributes).get project-root ]
             {
                 # This is Jamroot.
                 if $(id)
Modified: trunk/tools/build/v2/test/build_dir.py
==============================================================================
--- trunk/tools/build/v2/test/build_dir.py	(original)
+++ trunk/tools/build/v2/test/build_dir.py	2007-09-11 15:16:06 EDT (Tue, 11 Sep 2007)
@@ -88,7 +88,9 @@
 t.expect_addition(["build/foo/bin.v2/$toolset/debug/a.exe",                   
                    "build/foo/bin.v2/sub/$toolset/debug/b.exe"])
 
-# Try building in subdir
+# Try building in subdir. We expect that the entire build
+# tree with be in 'sub/build'.  Today, I'm not sure if
+# this is what the user expects,  but let it be.
 t.rm('build')
 t.run_build_system("--build-dir=build", subdir="sub")
 t.expect_addition(["sub/build/foo/bin.v2/sub/$toolset/debug/b.exe"])