|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r49127 - trunk/tools/build/v2/build
From: ghost_at_[hidden]
Date: 2008-10-03 04:40:17
Author: vladimir_prus
Date: 2008-10-03 04:40:17 EDT (Fri, 03 Oct 2008)
New Revision: 49127
URL: http://svn.boost.org/trac/boost/changeset/49127
Log:
If a free feature is found on command line, don't specially interpreter
commas and slashes in the reminder of the token. This makes
include=/home/user/whatever
work.
Text files modified:
trunk/tools/build/v2/build/build-request.jam | 26 ++++++++++++++++++++++----
1 files changed, 22 insertions(+), 4 deletions(-)
Modified: trunk/tools/build/v2/build/build-request.jam
==============================================================================
--- trunk/tools/build/v2/build/build-request.jam (original)
+++ trunk/tools/build/v2/build/build-request.jam 2008-10-03 04:40:17 EDT (Fri, 03 Oct 2008)
@@ -176,21 +176,37 @@
{
local result ;
local parts = [ regex.split $(e) "/" ] ;
- for local p in $(parts)
+ while $(parts)
{
+ local p = $(parts[1]) ;
local m = [ MATCH "([^=]*)=(.*)" : $(p) ] ;
local lresult ;
+ local feature ;
+ local values ;
if $(m)
{
- local feature = $(m[1]) ;
- local values = [ regex.split $(m[2]) "," ] ;
+ feature = $(m[1]) ;
+ values = [ regex.split $(m[2]) "," ] ;
lresult = <$(feature)>$(values) ;
}
else
{
lresult = [ regex.split $(p) "," ] ;
}
-
+
+ if $(feature) && free in [ feature.attributes $(feature) ]
+ {
+ # If we have free feature, then the value is everything
+ # until the end of the command line token. Slashes in
+ # the following string are not taked to mean separation
+ # of properties. Commas are also not interpreted specially.
+ values = $(values:J=,) ;
+ values = $(values) $(parts[2-]) ;
+ values = $(values:J=/) ;
+ lresult = <$(feature)>$(values) ;
+ parts = ;
+ }
+
if ! [ MATCH (.*-.*) : $(p) ]
{
# property.validate cannot handle subfeatures, so we avoid the check
@@ -209,6 +225,8 @@
{
result = $(result)/$(lresult) ;
}
+
+ parts = $(parts[2-]) ;
}
return $(result) ;
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk