external/icu/UnpackedTarball_icu.mk            |    1 +
 external/icu/icu4c-59-icu13329-xlocale.patch.1 |   14 ++++++++++++++
 2 files changed, 15 insertions(+)

New commits:
commit 9e399bc613bb4ea1470bd52c64af920d4e9bc39b
Author: Eike Rathke <[email protected]>
Date:   Wed Sep 13 13:42:29 2017 +0200

    icu: do not include non-standardized xlocale.h if U_PLATFORM_IS_LINUX_BASED
    
    ... should be more platforms ... but be conservative.
    U_PLATFORM_IMPLEMENTS_POSIX does not hold what it promises.
    
    "The file and this data structure is not standardized.  Don't rely on it.  
It
    can go away without warning."
    
    ...
    
    And since glibc 2.26 it's gone.
    
    https://ssl.icu-project.org/trac/ticket/13329
    
    Change-Id: I4c1f6130571f5d094cb35ce70e4d333763cee32a

diff --git a/external/icu/UnpackedTarball_icu.mk 
b/external/icu/UnpackedTarball_icu.mk
index 1ba15a448c75..7fa891f07d6d 100644
--- a/external/icu/UnpackedTarball_icu.mk
+++ b/external/icu/UnpackedTarball_icu.mk
@@ -35,6 +35,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,icu,\
        external/icu/icu4c-59-werror-undef.patch.1 \
        external/icu/icu4c-59-werror-shadow.patch.1 \
        external/icu/icu4c-iOS.patch.1 \
+       external/icu/icu4c-59-icu13329-xlocale.patch.1 \
 ))
 
 $(eval $(call 
gb_UnpackedTarball_add_file,icu,source/data/brkitr/khmerdict.dict,external/icu/khmerdict.dict))
diff --git a/external/icu/icu4c-59-icu13329-xlocale.patch.1 
b/external/icu/icu4c-59-icu13329-xlocale.patch.1
new file mode 100644
index 000000000000..93e14d23fa5a
--- /dev/null
+++ b/external/icu/icu4c-59-icu13329-xlocale.patch.1
@@ -0,0 +1,14 @@
+# xlocale.h is gone with glibc 2.26 and should never had been included.
+# https://ssl.icu-project.org/trac/ticket/13329
+diff -ur icu.org/source/i18n/digitlst.cpp icu/source/i18n/digitlst.cpp
+--- icu.org/source/i18n/digitlst.cpp   2017-01-20 01:20:31.000000000 +0100
++++ icu/source/i18n/digitlst.cpp       2017-09-13 13:25:59.980160603 +0200
+@@ -63,6 +63,8 @@
+ #if U_USE_STRTOD_L
+ # if U_PLATFORM_USES_ONLY_WIN32_API || U_PLATFORM == U_PF_CYGWIN
+ #   include <locale.h>
++# elif U_PLATFORM_IS_LINUX_BASED
++#   include <ctype.h>   // should be for all POSIX.2008 compliant platforms, 
but..
+ # else
+ #   include <xlocale.h>
+ # endif
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to