$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: ghost_at_[hidden]
Date: 2007-09-01 03:27:51
Author: vladimir_prus
Date: 2007-09-01 03:27:47 EDT (Sat, 01 Sep 2007)
New Revision: 39099
URL: http://svn.boost.org/trac/boost/changeset/39099
Log:
Add todo
Added:
   branches/BOOST_BUILD_PYTHON/boost/tools/build/v2/python/TODO.txt   (contents, props changed)
Added: branches/BOOST_BUILD_PYTHON/boost/tools/build/v2/python/TODO.txt
==============================================================================
--- (empty file)
+++ branches/BOOST_BUILD_PYTHON/boost/tools/build/v2/python/TODO.txt	2007-09-01 03:27:47 EDT (Sat, 01 Sep 2007)
@@ -0,0 +1,33 @@
+
+1. Current mechanism for interfacing with jam build engine is
+nasty.  Ideally, we should have this:
+
+    - The virtual_target.Action class holds action id.
+    - There's a map from action id into callable. Said
+    callable takes list of jam targets, list of jam
+    sources of a property set.  When the callable is called,
+    it typically just calls bjam's action.
+    - A new action id should be registered with 'action registry'
+    in one of those ways:
+    
+	- By saying that certain action id is already
+	defined on jam side.  In which case a callable will
+	be created that just calls bjam.
+	- By providing a action block to be associated
+	with id.  In this case, the action block will
+	be sent to bjam side. The callable will just
+	relay to bjam.
+	- By providing an action block and a python
+	function for additional setting of variables.
+	The callable will the call the variable-setting
+	code and relay to bjam.  This is equivalent to
+	jams rule/action pair, except we prefer to specify
+	variable-setting code in Python, not in Jam.
+	
+To implement the above, we need a way to define action block
+from Python.
+
+2. The current way to make rules available to Jamfiles is nasty --
+only functions defined in ProjectContext class are exported.
+
+	
\ No newline at end of file