vcpkg/ports/boost/0001-Fix-boost-ICU-support.patch

167 lines
7.5 KiB
Diff
Raw Normal View History

2017-07-12 23:31:51 +08:00
---
libs/locale/build/Jamfile.v2 | 63 ++++++--------------------------------
libs/locale/build/has_icu_test.cpp | 4 ---
libs/regex/build/Jamfile.v2 | 47 +++++++---------------------
3 files changed, 20 insertions(+), 94 deletions(-)
diff --git a/libs/locale/build/Jamfile.v2 b/libs/locale/build/Jamfile.v2
index 578e722..5f25917 100644
--- a/libs/locale/build/Jamfile.v2
+++ b/libs/locale/build/Jamfile.v2
@@ -70,62 +70,17 @@ if $(ICU_LINK)
}
else
{
- searched-lib icuuc : : <name>icuuc
- <search>$(ICU_PATH)/lib
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icuuc : : <toolset>msvc
- <variant>debug
- <name>icuucd
- <search>$(ICU_PATH)/lib
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icuuc : : <name>this_is_an_invalid_library_name ;
-
- searched-lib icudt : : <search>$(ICU_PATH)/lib
- <name>icudata
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icudt : : <search>$(ICU_PATH)/lib
- <name>icudt
- <toolset>msvc
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icudt : : <name>this_is_an_invalid_library_name ;
-
- searched-lib icuin : : <search>$(ICU_PATH)/lib
- <name>icui18n
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icuin : : <toolset>msvc
- <variant>debug
- <name>icuind
- <search>$(ICU_PATH)/lib
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icuin : : <toolset>msvc
- <variant>release
- <name>icuin
- <search>$(ICU_PATH)/lib
- <link>shared
- <runtime-link>shared ;
-
- searched-lib icuin : : <name>this_is_an_invalid_library_name ;
-
- explicit icuuc icudt icuin ;
+ alias icuuc : /user-config//icuuc ;
+ alias icuin : /user-config//icuin ;
+ alias icudt : /user-config//icudt ;
+
+ explicit icuuc icuin icudt ;
ICU_OPTS = <include>$(ICU_PATH)/include
- <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
- <runtime-link>shared ;
+ <library>icuuc
+ <library>icuin
+ <library>icudt
+ <dll-path>$(ICU_PATH)/bin ;
diff --git a/libs/locale/build/has_icu_test.cpp b/libs/locale/build/has_icu_test.cpp
index 9419b30..ed9be05 100644
--- a/libs/locale/build/has_icu_test.cpp
+++ b/libs/locale/build/has_icu_test.cpp
@@ -15,10 +15,6 @@
#include <unicode/uchar.h>
#include <unicode/coll.h>
-#if defined(_MSC_VER) && !defined(_DLL)
-#error "Mixing ICU with a static runtime doesn't work"
-#endif
-
int main()
{
icu::Locale loc;
diff --git a/libs/regex/build/Jamfile.v2 b/libs/regex/build/Jamfile.v2
index 58fd1fb..76ee9f4 100644
--- a/libs/regex/build/Jamfile.v2
+++ b/libs/regex/build/Jamfile.v2
@@ -48,50 +48,25 @@ if ! $(disable-icu)
}
else
{
- lib icuuc : : <runtime-link>shared <conditional>@path_options ;
- lib icuuc : : <toolset>msvc <variant>debug <name>icuucd <runtime-link>shared <conditional>@path_options ;
- lib icuuc : : <toolset>intel <target-os>windows <variant>debug <name>icuucd <runtime-link>shared <conditional>@path_options ;
- lib icuuc : : <name>sicuuc <runtime-link>static <conditional>@path_options ;
- lib icuuc : : <toolset>msvc <variant>debug <name>sicuucd <runtime-link>static <conditional>@path_options ;
- lib icuuc : : <toolset>intel <target-os>windows <variant>debug <name>sicuucd <runtime-link>static <conditional>@path_options ;
- lib icuuc : : <name>this_is_an_invalid_library_name ;
-
- lib icudt : : <name>icudata <runtime-link>shared <conditional>@path_options ;
- lib icudt : : <name>icudt <toolset>msvc <runtime-link>shared <conditional>@path_options ;
- lib icudt : : <name>icudt <toolset>intel <target-os>windows <runtime-link>shared <conditional>@path_options ;
- lib icudt : : <name>sicudata <runtime-link>static <conditional>@path_options ;
- lib icudt : : <name>sicudt <toolset>msvc <runtime-link>static <conditional>@path_options ;
- lib icudt : : <name>sicudt <toolset>intel <target-os>windows <runtime-link>static <conditional>@path_options ;
- lib icudt : : <name>this_is_an_invalid_library_name ;
-
- lib icuin : : <name>icui18n <runtime-link>shared <conditional>@path_options ;
- lib icuin : : <toolset>msvc <variant>debug <name>icuind <runtime-link>shared <conditional>@path_options ;
- lib icuin : : <toolset>msvc <name>icuin <runtime-link>shared <conditional>@path_options ;
- lib icuin : : <toolset>intel <target-os>windows <variant>debug <name>icuind <runtime-link>shared <conditional>@path_options ;
- lib icuin : : <toolset>intel <target-os>windows <name>icuin <runtime-link>shared <conditional>@path_options ;
- lib icuin : : <name>sicui18n <runtime-link>static <conditional>@path_options ;
- lib icuin : : <toolset>msvc <variant>debug <name>sicuind <runtime-link>static <conditional>@path_options ;
- lib icuin : : <toolset>msvc <name>sicuin <runtime-link>static <conditional>@path_options ;
- lib icuin : : <toolset>intel <target-os>windows <variant>debug <name>sicuind <runtime-link>static <conditional>@path_options ;
- lib icuin : : <toolset>intel <target-os>windows <name>sicuin <runtime-link>static <conditional>@path_options ;
- lib icuin : : <name>this_is_an_invalid_library_name ;
+
+ alias icuuc : /user-config//icuuc ;
+ alias icuin : /user-config//icuin ;
+ alias icudt : /user-config//icudt ;
+
+ explicit icuuc icuin icudt ;
ICU_OPTS =
<include>$(ICU_PATH)/include
- <runtime-link>shared:<library>icuuc/<link>shared
- <runtime-link>shared:<library>icudt/<link>shared
- <runtime-link>shared:<library>icuin/<link>shared
- <runtime-link>static:<library>icuuc
- <runtime-link>static:<library>icudt
- <runtime-link>static:<library>icuin
- <define>BOOST_HAS_ICU=1
- <runtime-link>static:<define>U_STATIC_IMPLEMENTATION=1
+ <library>icuuc
+ <library>icudt
+ <library>icuin
+ <define>BOOST_HAS_ICU=1
;
}
}
-unit-test has_icu : has_icu_test.cpp : $(ICU_OPTS) ;
+exe has_icu : has_icu_test.cpp : $(ICU_OPTS) ;
explicit has_icu ;
alias icu_options : : : : [ check-target-builds has_icu : $(ICU_OPTS) : ] ;
--
2.12.2.windows.2