Work around clang-cl issue with __int128

(see external/libtommath/clang-cl.patch for details)

Change-Id: Ice2e1b3e3c5944b3ae72365981679c1effdcfdbd
Reviewed-on: https://gerrit.libreoffice.org/45342
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
This commit is contained in:
Stephan Bergmann 2017-11-27 15:18:15 +01:00
parent 42beddd44b
commit 0d0341318d
2 changed files with 17 additions and 0 deletions

View file

@ -15,6 +15,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libtommath,0))
$(eval $(call gb_UnpackedTarball_add_patches,libtommath,\
external/libtommath/libtommath-msvc.patch \
external/libtommath/clang-cl.patch \
))
# vim: set noet sw=4 ts=4:

16
external/libtommath/clang-cl.patch vendored Executable file
View file

@ -0,0 +1,16 @@
--- tommath.h
+++ tommath.h
@@ -15,6 +15,13 @@
#ifndef BN_H_
#define BN_H_
+// Work around clang-cl issue when mp_word is a typedef for unsigned __int128, see
+// <https://bugs.llvm.org/show_bug.cgi?id=25305> "Clang-cl generates a call to an undefined symbol
+// _udivti3":
+#if defined _WIN32 && defined __clang__
+#define MP_8BIT
+#endif
+
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>