Update of /cvsroot/boost/boost/tools/build/v2/build
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv7659

Modified Files:
        targets.jam toolset.jam 
Log Message:
Introduce 'toolset requirements'

Index: targets.jam
===================================================================
RCS file: /cvsroot/boost/boost/tools/build/v2/build/targets.jam,v
retrieving revision 1.204
retrieving revision 1.205
diff -u -d -r1.204 -r1.205
--- targets.jam 8 Nov 2006 09:07:01 -0000       1.204
+++ targets.jam 18 Nov 2006 18:34:42 -0000      1.205
@@ -82,6 +82,7 @@
 import set ;
 import assert ;
 import indirect ;
+import toolset ;
 
 # Base class for all abstract targets.
 class abstract-target 
@@ -1408,6 +1409,8 @@
   : project       # Project where the main target is to be declared
       )
 {
+    specification += [ toolset.requirements ] ;
+    
     local requirements = [ property-set.refine-from-user-input 
         [ $(project).get requirements ] : $(specification) :
         [ $(project).project-module ] : [ $(project).get location ] ] ;

Index: toolset.jam
===================================================================
RCS file: /cvsroot/boost/boost/tools/build/v2/build/toolset.jam,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -d -r1.41 -r1.42
--- toolset.jam 5 Nov 2006 06:40:20 -0000       1.41
+++ toolset.jam 18 Nov 2006 18:34:42 -0000      1.42
@@ -465,7 +465,23 @@
     IMPORT $(toolset) : $(rules) : : $(toolset).$(rules) ;
 }
 
+# Return the list of global 'toolset requirements'.
+# Those requirements will be automatically added to
+# the requirements of any main target.
+rule requirements ( )
+{
+    return $(.requirements) ;
+}
 
+# Adds elements to the list of global 'toolset requirements'.
+# The requirements will be automatically added to the requirements
+# for all main targets, as if they were specified literally.
+# For best results, all requirements added should be conditional or
+# indirect conditional.
+rule add-requirements ( requirements * )
+{
+    .requirements += $(requirements) ;
+}
 
 local rule __test__ ( )
 {


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs

Reply via email to