Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r52330 - trunk
From: ghost_at_[hidden]
Date: 2009-04-11 09:56:04


Author: vladimir_prus
Date: 2009-04-11 09:56:02 EDT (Sat, 11 Apr 2009)
New Revision: 52330
URL: http://svn.boost.org/trac/boost/changeset/52330

Log:
Disallow link=shared + runtime-link=shared clearly.

Previously, we'd skip build with such combination, without
much of an explanation. Now, a clear error is emitted.

Text files modified:
   trunk/Jamroot | 12 +++++++-----
   1 files changed, 7 insertions(+), 5 deletions(-)

Modified: trunk/Jamroot
==============================================================================
--- trunk/Jamroot (original)
+++ trunk/Jamroot 2009-04-11 09:56:02 EDT (Sat, 11 Apr 2009)
@@ -151,16 +151,18 @@
 
 rule handle-static-runtime ( properties * )
 {
- # This property combination is dangerous. Ideally, we would add a constraint
- # to default build, so that user can build this property combination only if
- # requested directly. But we do not have any 'constraint' system for
- # default-build, so we disable such builds in requirements.
+ # Using static runtime with shared libraries is impossible on Linux,
+ # and dangerous on Windows. Therefore, we disallow it. This might
+ # be drastic, but it was disabled for a while with nobody complaining.
 
     # For CW, static runtime is needed so that std::locale works.
     if <link>shared in $(properties) && <runtime-link>static in $(properties) &&
         ! ( <toolset>cw in $(properties) )
     {
- return <build>no ;
+ ECHO "error: link=static together with runtime=link is not allowed" ;
+ ECHO "error: such property combination is either impossible " ;
+ ECHO "error: or too dangerious to be of any use" ;
+ EXIT ;
     }
 }
 


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