Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r66659 - trunk/libs/regex/build
From: john_at_[hidden]
Date: 2010-11-21 13:41:00


Author: johnmaddock
Date: 2010-11-21 13:40:59 EST (Sun, 21 Nov 2010)
New Revision: 66659
URL: http://svn.boost.org/trac/boost/changeset/66659

Log:
Another attempt at fixing 64-bit ICU support.
dll-path for 64-bit builds still isn't set correctly.
Refs #4864.
Text files modified:
   trunk/libs/regex/build/Jamfile.v2 | 44 ++++++++++++++++++++++++++++++++-------
   1 files changed, 36 insertions(+), 8 deletions(-)

Modified: trunk/libs/regex/build/Jamfile.v2
==============================================================================
--- trunk/libs/regex/build/Jamfile.v2 (original)
+++ trunk/libs/regex/build/Jamfile.v2 2010-11-21 13:40:59 EST (Sun, 21 Nov 2010)
@@ -12,6 +12,22 @@
 
 local disable-icu = [ MATCH (--disable-icu) : [ modules.peek : ARGV ] ] ;
 
+rule dll-path_options ( properties * )
+{
+ local result ;
+ if <address-model>64 in $(properties)
+ {
+ result = <dll-path>$(ICU_PATH)/bin64 ;
+ }
+ else
+ {
+ result = <dll-path>$(ICU_PATH)/bin ;
+ }
+ ECHO $(result) ;
+ return $(result) ;
+}
+
+
 #
 # ICU configuration:
 #
@@ -33,15 +49,24 @@
    }
    else
    {
- lib icuuc : : <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <link>shared <runtime-link>shared ;
- lib icuuc : : <toolset>msvc <variant>debug <name>icuucd <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <link>shared <runtime-link>shared ;
+ lib icuuc : : <search>$(ICU_PATH)/lib <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icuuc : : <address-model>64 <search>$(ICU_PATH)/lib64 <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
+ lib icuuc : : <toolset>msvc <variant>debug <name>icuucd <search>$(ICU_PATH)/lib <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icuuc : : <address-model>64 <toolset>msvc <variant>debug <name>icuucd <search>$(ICU_PATH)/lib64 <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
       lib icuuc : : <name>this_is_an_invalid_library_name ;
- lib icudt : : <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <name>icudata <link>shared <runtime-link>shared ;
- lib icudt : : <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <name>icudt <toolset>msvc <link>shared <runtime-link>shared ;
+
+ lib icudt : : <search>$(ICU_PATH)/lib <name>icudata <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icudt : : <address-model>64 <search>$(ICU_PATH)/lib64 <name>icudata <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
+ lib icudt : : <search>$(ICU_PATH)/lib <name>icudt <toolset>msvc <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icudt : : <address-model>64 <search>$(ICU_PATH)/lib64 <name>icudt <toolset>msvc <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
       lib icudt : : <name>this_is_an_invalid_library_name ;
- lib icuin : : <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <name>icui18n <link>shared <runtime-link>shared ;
- lib icuin : : <toolset>msvc <variant>debug <name>icuind <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <link>shared <runtime-link>shared ;
- lib icuin : : <toolset>msvc <variant>release <name>icuin <instruction-set>32:<search>$(ICU_PATH)/lib <instruction-set>64:<search>$(ICU_PATH)/lib <link>shared <runtime-link>shared ;
+
+ lib icuin : : <search>$(ICU_PATH)/lib <name>icui18n <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icuin : : <address-model>64 <search>$(ICU_PATH)/lib64 <name>icui18n <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
+ lib icuin : : <toolset>msvc <variant>debug <name>icuind <search>$(ICU_PATH)/lib <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icuin : : <address-model>64 <toolset>msvc <variant>debug <name>icuind <search>$(ICU_PATH)/lib64 <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
+ lib icuin : : <toolset>msvc <variant>release <name>icuin <search>$(ICU_PATH)/lib <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin ;
+ lib icuin : : <address-model>64 <toolset>msvc <variant>release <name>icuin <search>$(ICU_PATH)/lib64 <link>shared <runtime-link>shared <dll-path>$(ICU_PATH)/bin64 ;
       lib icuin : : <name>this_is_an_invalid_library_name ;
 
       if $(ICU_PATH)
@@ -80,8 +105,8 @@
          <library>icuuc/<link>shared/<runtime-link>shared
          <library>icudt/<link>shared/<runtime-link>shared
          <library>icuin/<link>shared/<runtime-link>shared
- <dll-path>$(ICU_PATH)/bin
          <define>BOOST_HAS_ICU=1
+ <dll-path>$(ICU_PATH)/bin
          <runtime-link>shared
          <toolset>msvc:<linkflags>/delayload:$(icuucd_name:B).dll
          <toolset>msvc:<linkflags>/delayload:$(icuuc_name:B).dll
@@ -132,3 +157,6 @@
 
 
 
+
+
+


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