Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r53456 - trunk/tools/build/v2/tools
From: ghost_at_[hidden]
Date: 2009-05-30 09:24:27


Author: vladimir_prus
Date: 2009-05-30 09:24:26 EDT (Sat, 30 May 2009)
New Revision: 53456
URL: http://svn.boost.org/trac/boost/changeset/53456

Log:
On Cygwin, install DLLs to $(prefix)/bin.

Text files modified:
   trunk/tools/build/v2/tools/package.jam | 25 ++++++++++++++++++++++---
   1 files changed, 22 insertions(+), 3 deletions(-)

Modified: trunk/tools/build/v2/tools/package.jam
==============================================================================
--- trunk/tools/build/v2/tools/package.jam (original)
+++ trunk/tools/build/v2/tools/package.jam 2009-05-30 09:24:26 EDT (Sat, 30 May 2009)
@@ -83,8 +83,26 @@
 
     stage.install $(name)-bin : $(binaries) : $(requirements)
         <location>$(bin-locate) ;
- stage.install $(name)-lib : $(binaries) $(libraries) : $(requirements)
- <location>$(lib-locate) <install-dependencies>on <install-type>LIB ;
+ alias $(name)-lib : $(name)-lib-shared $(name)-lib-static ;
+
+ # Since the install location of shared libraries differs on universe
+ # and cygwin, use target alternatives to make different targets.
+ # We should have used indirection conditioanl requirements, but it's
+ # awkward to pass bin-locate and lib-locate from there to another rule.
+ alias $(name)-lib-shared : $(name)-lib-shared-universe ;
+ alias $(name)-lib-shared : $(name)-lib-shared-cygwin : <target-os>cygwin ;
+
+ # For shared libraries, we install both explicitly specified one and the
+ # shared libraries that the installed executables depend on.
+ stage.install $(name)-lib-shared-universe : $(binaries) $(libraries) : $(requirements)
+ <location>$(lib-locate) <install-dependencies>on <install-type>SHARED_LIB ;
+ stage.install $(name)-lib-shared-cygwin : $(binaries) $(libraries) : $(requirements)
+ <location>$(bin-locate) <install-dependencies>on <install-type>SHARED_LIB ;
+
+ # For static libraries, we do not care about executable dependencies, since
+ # static libraries are already incorporated into them.
+ stage.install $(name)-lib-static : $(libraries) : $(requirements)
+ <location>$(lib-locate) <install-dependencies>on <install-type>STATIC_LIB ;
     stage.install $(name)-headers : $(headers) : $(requirements)
         <location>$(include-locate)$(install-header-subdir)
         <install-source-root>$(install-source-root) ;
@@ -94,6 +112,7 @@
     local project-module = [ $(c).project-module ] ;
     module $(project-module)
     {
- explicit $(1)-bin $(1)-lib $(1)-headers $(1) ;
+ explicit $(1)-bin $(1)-lib $(1)-headers $(1) $(1)-lib-shared $(1)-lib-static
+ $(1)-lib-shared-universe $(1)-lib-shared-cygwin ;
     }
 }


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