Skip to content

Commit 94d0a0d

Browse files
Adjust Android.mk to link dynamic OpenSSL, build libsqlcipher.so
1 parent 81f0921 commit 94d0a0d

File tree

1 file changed

+23
-36
lines changed

1 file changed

+23
-36
lines changed
Lines changed: 23 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,24 @@
1-
21
LOCAL_PATH:= $(call my-dir)
32
include $(CLEAR_VARS)
43

5-
# If using SEE, uncomment the following:
6-
# LOCAL_CFLAGS += -DSQLITE_HAS_CODEC
7-
8-
#Define HAVE_USLEEP, otherwise ALL sleep() calls take at least 1000ms
9-
LOCAL_CFLAGS += -DHAVE_USLEEP=1
10-
11-
# Enable SQLite extensions.
12-
LOCAL_CFLAGS += -DSQLITE_ENABLE_FTS5
13-
LOCAL_CFLAGS += -DSQLITE_ENABLE_RTREE
14-
LOCAL_CFLAGS += -DSQLITE_ENABLE_JSON1
15-
LOCAL_CFLAGS += -DSQLITE_ENABLE_FTS3
16-
LOCAL_CFLAGS += -DSQLITE_ENABLE_BATCH_ATOMIC_WRITE
17-
18-
# This is important - it causes SQLite to use memory for temp files. Since
19-
# Android has no globally writable temp directory, if this is not defined the
20-
# application throws an exception when it tries to create a temp file.
21-
#
22-
LOCAL_CFLAGS += -DSQLITE_TEMP_STORE=3
23-
24-
LOCAL_CFLAGS += -DHAVE_CONFIG_H -DKHTML_NO_EXCEPTIONS -DGKWQ_NO_JAVA
25-
LOCAL_CFLAGS += -DNO_SUPPORT_JS_BINDING -DQT_NO_WHEELEVENT -DKHTML_NO_XBL
26-
LOCAL_CFLAGS += -U__APPLE__
27-
LOCAL_CFLAGS += -DHAVE_STRCHRNUL=0
28-
LOCAL_CFLAGS += -DSQLITE_USE_URI=1
29-
LOCAL_CFLAGS += -Wno-unused-parameter -Wno-int-to-pointer-cast
30-
LOCAL_CFLAGS += -Wno-uninitialized -Wno-parentheses
31-
LOCAL_CPPFLAGS += -Wno-conversion-null
32-
33-
34-
ifeq ($(TARGET_ARCH), arm)
35-
LOCAL_CFLAGS += -DPACKED="__attribute__ ((packed))"
4+
ifdef $SSQLCIPHER_CFLAGS
5+
LOCAL_CFLAGS += ${SQLCIPHER_CFLAGS}
366
else
37-
LOCAL_CFLAGS += -DPACKED=""
7+
LOCAL_CFLAGS += -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_OPENSSL -DSQLITE_TEMP_STORE=2 \
8+
-DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS3_PARENTHESIS \
9+
-DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_ENABLE_FTS5 \
10+
-DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_RTREE \
11+
-DSQLITE_SOUNDEX -DHAVE_USLEEP -DSQLITE_ENABLE_LOAD_EXTENSION -DSQLITE_ENABLE_STAT3 \
12+
-DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_EXPLAIN_COMMENTS \
13+
-DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_MAX_VARIABLE_NUMBER=99999 \
14+
-DSQLITE_DEFAULT_JOURNAL_SIZE_LIMIT=1048576 -DSQLITE_ENABLE_SESSION \
15+
-DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_DBSTAT_VTAB
3816
endif
3917

18+
LOCAL_CPPFLAGS += -Wno-conversion-null
19+
20+
#$(info "SQLCipher LOCAL CFLAGS:${LOCAL_CFLAGS}")
21+
4022
LOCAL_SRC_FILES:= \
4123
android_database_SQLiteCommon.cpp \
4224
android_database_SQLiteConnection.cpp \
@@ -46,10 +28,15 @@ LOCAL_SRC_FILES:= \
4628

4729
LOCAL_SRC_FILES += sqlite3.c
4830

49-
LOCAL_C_INCLUDES += $(LOCAL_PATH) $(LOCAL_PATH)/nativehelper/
31+
LOCAL_C_INCLUDES += $(LOCAL_PATH) $(LOCAL_PATH)/nativehelper/ $(LOCAL_PATH)/android-libs/include/
5032

51-
LOCAL_MODULE:= libsqliteX
52-
LOCAL_LDLIBS += -ldl -llog
33+
LOCAL_MODULE:= libsqlcipher
34+
LOCAL_LDLIBS += -ldl -llog
35+
LOCAL_SHARED_LIBRARIES += shared-libcrypto
5336

5437
include $(BUILD_SHARED_LIBRARY)
5538

39+
include $(CLEAR_VARS)
40+
LOCAL_MODULE := shared-libcrypto
41+
LOCAL_SRC_FILES := $(LOCAL_PATH)/android-libs/$(TARGET_ARCH_ABI)/libcrypto.so
42+
include $(PREBUILT_SHARED_LIBRARY)

0 commit comments

Comments
 (0)