Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(488)

Unified Diff: third_party/sqlite/patches/0010-build-Undefined-symbol-in-intrinsic-on-Android-clang.patch

Issue 2751253002: [sql] Import SQLite 3.17.0. (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/sqlite/patches/0010-build-Undefined-symbol-in-intrinsic-on-Android-clang.patch
diff --git a/third_party/sqlite/patches/0010-build-Undefined-symbol-in-intrinsic-on-Android-clang.patch b/third_party/sqlite/patches/0010-build-Undefined-symbol-in-intrinsic-on-Android-clang.patch
new file mode 100644
index 0000000000000000000000000000000000000000..1f6757de825ecb1f164739f734d7899fae89b79e
--- /dev/null
+++ b/third_party/sqlite/patches/0010-build-Undefined-symbol-in-intrinsic-on-Android-clang.patch
@@ -0,0 +1,33 @@
+From fdd45cb19f2120330bb181cf69b55634588086f5 Mon Sep 17 00:00:00 2001
+From: Scott Hess <shess@chromium.org>
+Date: Tue, 14 Mar 2017 13:51:07 -0700
+Subject: [PATCH 10/10] [build] Undefined symbol in intrinsic on Android clang.
+
+SQLite implements sqlite3MulInt64() using __builtin_mul_overflow() for
+appropriate versions of GCC or clang. But the Chromium clang package
+doesn't seem to provide the necessary library for Android.
+
+BUG=701524
+---
+ third_party/sqlite/src/src/util.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/third_party/sqlite/src/src/util.c b/third_party/sqlite/src/src/util.c
+index c6d2bae3a7b4..fee852d3309f 100644
+--- a/third_party/sqlite/src/src/util.c
++++ b/third_party/sqlite/src/src/util.c
+@@ -1310,7 +1310,10 @@ int sqlite3SubInt64(i64 *pA, i64 iB){
+ #endif
+ }
+ int sqlite3MulInt64(i64 *pA, i64 iB){
+-#if GCC_VERSION>=5004000 || CLANG_VERSION>=4000000
++/* TODO(shess): Chromium Android clang generates a link error:
++** undefined reference to '__mulodi4'
++*/
++#if GCC_VERSION>=5004000 || (CLANG_VERSION>=4000000 && !defined(__ANDROID__))
+ return __builtin_mul_overflow(*pA, iB, pA);
+ #else
+ i64 iA = *pA;
+--
+2.11.0
+

Powered by Google App Engine
This is Rietveld 408576698