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

Modified Files:
      Tag: RC_1_34_0
        python.jam 
Log Message:
Properly set up <dll-path> for windows embedding targets.


Index: python.jam
===================================================================
RCS file: /cvsroot/boost/boost/tools/build/v2/tools/python.jam,v
retrieving revision 1.12.2.40
retrieving revision 1.12.2.41
diff -u -d -r1.12.2.40 -r1.12.2.41
--- python.jam  20 Mar 2007 16:48:05 -0000      1.12.2.40
+++ python.jam  21 Mar 2007 05:42:31 -0000      1.12.2.41
@@ -184,8 +184,6 @@
     return $(result) ;
 }
 
-# Find the path to the python executable invoked by the given command
-#
 # Tries to determine whether invoking "cmd" would actually attempt to
 # launch a cygwin symlink.
 #
@@ -463,17 +461,17 @@
     }
 }
 
-# Make sure the "libraries" and "includes" variables (in an enclosing
-# scope) have a value, based on the information given.
+# Make sure the "executable", "libraries", and "includes" variables
+# (in an enclosing scope) have a value, based on the information
+# given.
 local rule compute-default-paths ( 
-  target-os : version ? : prefix ? : exec-prefix ? : executable ? )
+  target-os : version ? : prefix ? : exec-prefix ? )
 {
     exec-prefix ?= $(prefix) ;
+    executable ?= $(:E=python:R=$(exec-prefix)) ;
     
     if $(target-os) = windows
     {
-        executable ?= $(:E=python:R=$(exec-prefix)) ;
-        
         # The exec-prefix is where you're supposed to look for
         # machine-specific libraries.
         local default-library-path = $(:E=libs:R=$(exec-prefix)) ;
@@ -603,10 +601,10 @@
             # sun toolset adds -lrt unconditionally). While this
             # appears to duplicate the logic already in gcc.jam, it
             # doesn't as long as we're not forcing <threading>multi.
-            return pthread dl <toolset>gcc:<source>rt ;
+            return pthread dl <toolset>gcc:<library>rt ;
 
         
-        case osf : return pthread <toolset>gcc:<source>rt ;
+        case osf : return pthread <toolset>gcc:<library>rt ;
         
         case qnx* : return ;  
         case darwin : return ;
@@ -614,7 +612,7 @@
         
         case hpux : return pthread rt ;
         
-        case * : return pthread dl <toolset>gcc:<source>util ;
+        case * : return pthread dl <toolset>gcc:<library>util ;
     }
 }
 
@@ -729,11 +727,12 @@
                 {
                     debug-message ...requested configuration matched! ;
                     
+                    executable ?= $(sys.executable) ;
+                    
                     compute-default-paths
                       $(target-os) : $(sys.version) 
                         : $(sys.prefix)
                           : $(sys.exec_prefix)
-                            : $(sys.executable)
                               ;
                     version = $(sys.version) ;
                     interpreter-cmd ?= $(cmd) ;
@@ -747,7 +746,7 @@
         }
         
         # Anything left to compute?
-        if ! ( $(includes) && $(libraries) )
+        if ! ( $(includes) && $(libraries) && $(executable) )
         {
             version ?= $(fallback-version) ;
             version ?= 2.5 ;
@@ -766,9 +765,12 @@
         }
     }
     
+    local executable-dir = $(executable:D) ;
     debug-message "Python interpreter command is" 
\"$(interpreter-cmd:E=<empty>)\" ;
     debug-message "Python include path is" \"$(includes:E=<empty>)\" ;
     debug-message "Python library path is" \"$(libraries:E=<empty>)\" ;
+    debug-message "Python executable directory is" 
\"$(executable-dir:E=<empty>)\" ;
+    
     #
     # End autoconfiguration sequence
     #
@@ -823,6 +825,13 @@
             framework-directory = ;
         }
     }
+
+    # Make sure that we can find the Python DLL on windows
+    local dll-path ;
+    if $(target-os) = windows
+    {
+        dll-path += $(executable-dir) ;
+    }
     
     #
     # Declare the "python" target. This should really be called
@@ -847,7 +856,7 @@
           : $(system-libs) 
           : $(target-requirements)
           :
-          : <include>$(includes) <library-path>$(libraries) 
<library>$(libpython-target-name)
+          : <include>$(includes) <library-path>$(libraries) 
<library>$(libpython-target-name) <dll-path>$(dll-path)
           ;
     }
     


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