guix/gnu/packages/patches/boost-fix-icu-build.patch
Mark H Weaver 713c975ac0
gnu: boost: Fix ICU support.
* gnu/packages/patches/boost-fix-icu-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/boost.scm (boost)[source]: Add the patch.
[arguments]: In the custom configure phase, pass --with-icu=[...]
to ./bootstrap.sh
2018-04-10 00:46:22 -04:00

53 lines
2.4 KiB
Diff

Pass -std=c++11 when compiling files that include the ICU headers. Without
this flag, compilation fails and causes Boost's build system to remove ICU
support. Note that $(pkg-config --variable=CXXFLAGS icu-uc) includes
"-std=c++11", but Boost's build system does not use 'pkg-config'.
--- boost_1_66_0/libs/locale/build/Jamfile.v2.orig 2017-12-13 18:56:44.000000000 -0500
+++ boost_1_66_0/libs/locale/build/Jamfile.v2 2018-04-08 15:18:58.673025760 -0400
@@ -65,8 +65,8 @@
if $(ICU_LINK)
{
- ICU_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <runtime-link>shared ;
- ICU64_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin64 <runtime-link>shared ;
+ ICU_OPTS = <include>$(ICU_PATH)/include <cxxflags>-std=c++11 <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <runtime-link>shared ;
+ ICU64_OPTS = <include>$(ICU_PATH)/include <cxxflags>-std=c++11 <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin64 <runtime-link>shared ;
}
else
{
@@ -121,6 +121,7 @@
explicit icuuc icudt icuin ;
ICU_OPTS = <include>$(ICU_PATH)/include
+ <cxxflags>-std=c++11
<library>icuuc/<link>shared/<runtime-link>shared
<library>icudt/<link>shared/<runtime-link>shared
<library>icuin/<link>shared/<runtime-link>shared
@@ -180,6 +181,7 @@
explicit icuuc_64 icudt_64 icuin_64 ;
ICU64_OPTS = <include>$(ICU_PATH)/include
+ <cxxflags>-std=c++11
<library>icuuc_64/<link>shared/<runtime-link>shared
<library>icudt_64/<link>shared/<runtime-link>shared
<library>icuin_64/<link>shared/<runtime-link>shared
--- boost_1_66_0/libs/regex/build/Jamfile.v2.orig 2017-12-13 18:56:48.000000000 -0500
+++ boost_1_66_0/libs/regex/build/Jamfile.v2 2018-04-08 15:20:40.865532505 -0400
@@ -44,7 +44,7 @@
if $(ICU_LINK)
{
- ICU_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <define>BOOST_HAS_ICU=1 <runtime-link>shared ;
+ ICU_OPTS = <include>$(ICU_PATH)/include <cxxflags>-std=c++11 <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <define>BOOST_HAS_ICU=1 <runtime-link>shared ;
}
else
{
@@ -78,6 +78,7 @@
ICU_OPTS =
<include>$(ICU_PATH)/include
+ <cxxflags>-std=c++11
<runtime-link>shared:<library>icuuc/<link>shared
<runtime-link>shared:<library>icudt/<link>shared
<runtime-link>shared:<library>icuin/<link>shared