Android.mk revision cc9b3cabf4066b55a7b8dabe59cdd6d6351eb74e
1##
2##
3## Build the library
4##
5##
6
7LOCAL_PATH:= $(call my-dir)
8
9common_src_files := sqlite3.c
10
11# the device library
12include $(CLEAR_VARS)
13
14LOCAL_SRC_FILES := $(common_src_files)
15
16ifneq ($(TARGET_ARCH),arm)
17LOCAL_LDLIBS += -lpthread -ldl
18endif
19
20# NOTE the following flags,
21#   SQLITE_TEMP_STORE=3 causes all TEMP files to go into RAM. and thats the behavior we want
22#   SQLITE_ENABLE_FTS3   enables usage of FTS3 - NOT FTS1 or 2.
23#   SQLITE_DEFAULT_AUTOVACUUM=1  causes the databases to be subject to auto-vacuum
24LOCAL_CFLAGS += -DHAVE_USLEEP=1 -DSQLITE_DEFAULT_JOURNAL_SIZE_LIMIT=1048576 -DSQLITE_THREADSAFE=1 -DNDEBUG=1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1 -DSQLITE_DEFAULT_AUTOVACUUM=1 -DSQLITE_TEMP_STORE=3 -DSQLITE_ENABLE_FTS3
25
26ifneq ($(TARGET_SIMULATOR),true)
27LOCAL_SHARED_LIBRARIES := libdl
28endif
29
30LOCAL_MODULE:= libsqlite
31LOCAL_C_INCLUDES += $(call include-path-for, system-core)/cutils
32LOCAL_SHARED_LIBRARIES += liblog \
33            libicuuc \
34            libicui18n \
35            libutils
36
37# include android specific methods
38LOCAL_WHOLE_STATIC_LIBRARIES := libsqlite3_android
39
40## Choose only one of the allocator systems below
41# new sqlite 3.5.6 no longer support external allocator 
42#LOCAL_SRC_FILES += mem_malloc.c
43#LOCAL_SRC_FILES += mem_mspace.c
44
45
46include $(BUILD_SHARED_LIBRARY)
47
48##
49##
50## Build the device command line tool sqlite3
51##
52##
53ifneq ($(SDK_ONLY),true)  # SDK doesn't need device version of sqlite3
54
55include $(CLEAR_VARS)
56
57LOCAL_SRC_FILES := shell.c
58
59LOCAL_SHARED_LIBRARIES := libsqlite
60
61LOCAL_C_INCLUDES := $(LOCAL_PATH)/../android
62
63
64ifneq ($(TARGET_ARCH),arm)
65LOCAL_LDLIBS += -lpthread -ldl
66endif
67
68LOCAL_CFLAGS += -DHAVE_USLEEP=1 -DTHREADSAFE=1 -DNDEBUG=1
69
70LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
71
72LOCAL_MODULE_TAGS := debug
73
74LOCAL_MODULE := sqlite3
75
76include $(BUILD_EXECUTABLE)
77
78endif # !SDK_ONLY
79
80
81##
82##
83## Build the host command line tool sqlite3
84##
85##
86
87include $(CLEAR_VARS)
88
89LOCAL_SRC_FILES := $(common_src_files) shell.c
90
91LOCAL_CFLAGS += -DHAVE_USLEEP=1 -DSQLITE_DEFAULT_JOURNAL_SIZE_LIMIT=1048576 -DSQLITE_THREADSAFE=1 -DNDEBUG=1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1 -DNO_ANDROID_FUNCS=1 -DSQLITE_TEMP_STORE=3 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_BACKWARDS
92
93LOCAL_C_INCLUDES := $(LOCAL_PATH)/../android
94
95# sqlite3MemsysAlarm uses LOG()
96LOCAL_STATIC_LIBRARIES += liblog
97
98
99have_readline := $(wildcard /usr/include/readline/readline.h)
100have_history := $(wildcard /usr/lib/libhistory*)
101ifneq ($(strip $(have_readline)),)
102LOCAL_CFLAGS += -DHAVE_READLINE=1
103endif
104
105LOCAL_LDLIBS += -lpthread
106ifneq ($(HOST_OS),freebsd)
107LOCAL_LDLIBS += -ldl
108endif
109
110ifneq ($(strip $(have_readline)),)
111LOCAL_LDLIBS += -lreadline -lncurses
112endif
113ifneq ($(strip $(have_history)),)
114LOCAL_LDLIBS += -lhistory
115endif
116
117LOCAL_MODULE := sqlite3
118
119include $(BUILD_HOST_EXECUTABLE)
120
121