Boost logo

Boost-Build :

From: Rene Rivera (grafik.list_at_[hidden])
Date: 2006-03-25 01:15:09


Rene Rivera wrote:
> I'm trying to declare something lile:
>
> variant foo : debug : <architecture>x86:<cflags>-mno-mmx ;
>
> Which fails because it seems variant doesn't allow for conditionals. Is
> this intentional? If it is, why? It seems perfectly reasonable to want
> conditionals in variants.

And disabling the check...

===================================================================
RCS file: /cvsroot/boost/boost/tools/build/v2/tools/builtin.jam,v
retrieving revision 1.189
diff -u -r1.189 builtin.jam
--- tools/build/v2/tools/builtin.jam 10 Mar 2006 11:29:31 -0000 1.189
+++ tools/build/v2/tools/builtin.jam 25 Mar 2006 05:58:06 -0000
@@ -250,7 +250,7 @@

          inherited += $(.explicit-properties.$(p)) ;
      }
- property.validate $(explicit-properties) ;
+ #~ property.validate $(explicit-properties) ;
      explicit-properties = [ property.refine $(inherited) :
$(explicit-properties) ] ;

      # Record explicitly specified properties for this variant
===================================================================

Doesn't help as then it errors when creating the targets...

C:/DevRoots/Boost/boost/tools/build/v2/build\feature.jam:648: in
expand-composites from module feature
error: expansions of composite features result in conflicting values for
<os>
error: values: LINUX:<define>_REENTRANT LINUX:<define>_LARGEFILE64_SOURCE
error: one contributing composite property was <variant>@debug
C:/DevRoots/Boost/boost/tools/build/v2/build\feature.jam:740: in
feature.expand from module feature
C:/DevRoots/Boost/boost/tools/build/v2/build\targets.jam:704: in
apply-default-build from module object(main-target)@69
C:/DevRoots/Boost/boost/tools/build/v2/build\targets.jam:732: in
object(main-target)@69.generate from module object(main-target)@69
C:/DevRoots/Boost/boost/tools/build/v2/build\targets.jam:252: in
object(project-target)@58.generate from module object(project-target)@58
C:/DevRoots/Boost/boost/tools/build/v2\build-system.jam:299: in load
from module build-system

Grrr... I'm not in a happy place now :-(

Is there any redeeming value in variants? Is there some other way to
encode common, but not project tied, requirements? Perhaps "alias"?

--
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

Boost-Build 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