Android.mk revision 1c9f731c5a080b9b26a36b58da954b793ad3cd3b
17790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
27790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
37790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project## Build the library
47790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
57790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
67790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
77790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_PATH:= $(call my-dir)
87790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
91c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu Noricommon_sqlite_flags := -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 -DSQLITE_ENABLE_FTS3_BACKWARDS
101c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu Nori
117790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectcommon_src_files := sqlite3.c
127790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
137790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project# the device library
147790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectinclude $(CLEAR_VARS)
157790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
167790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_SRC_FILES := $(common_src_files)
177790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
187790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(TARGET_ARCH),arm)
197790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_LDLIBS += -lpthread -ldl
207790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif
217790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
22cc9b3cabf4066b55a7b8dabe59cdd6d6351eb74eVasu Nori# NOTE the following flags,
23cc9b3cabf4066b55a7b8dabe59cdd6d6351eb74eVasu Nori#   SQLITE_TEMP_STORE=3 causes all TEMP files to go into RAM. and thats the behavior we want
24cc9b3cabf4066b55a7b8dabe59cdd6d6351eb74eVasu Nori#   SQLITE_ENABLE_FTS3   enables usage of FTS3 - NOT FTS1 or 2.
25cc9b3cabf4066b55a7b8dabe59cdd6d6351eb74eVasu Nori#   SQLITE_DEFAULT_AUTOVACUUM=1  causes the databases to be subject to auto-vacuum
261c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu NoriLOCAL_CFLAGS += $(common_sqlite_flags)
277790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
287790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(TARGET_SIMULATOR),true)
297790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_SHARED_LIBRARIES := libdl
307790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif
317790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
327790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_MODULE:= libsqlite
337790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_C_INCLUDES += $(call include-path-for, system-core)/cutils
347790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_SHARED_LIBRARIES += liblog \
357790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project            libicuuc \
36e919af569c13d7445daf20cb06867e186afba92aDaisuke Miyakawa            libicui18n \
37e919af569c13d7445daf20cb06867e186afba92aDaisuke Miyakawa            libutils
387790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
397790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project# include android specific methods
407790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_WHOLE_STATIC_LIBRARIES := libsqlite3_android
417790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
427790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project## Choose only one of the allocator systems below
437790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project# new sqlite 3.5.6 no longer support external allocator 
447790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project#LOCAL_SRC_FILES += mem_malloc.c
457790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project#LOCAL_SRC_FILES += mem_mspace.c
467790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
477790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
487790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectinclude $(BUILD_SHARED_LIBRARY)
497790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
507790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
517790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
527790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project## Build the device command line tool sqlite3
537790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
547790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
557790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(SDK_ONLY),true)  # SDK doesn't need device version of sqlite3
567790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
577790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectinclude $(CLEAR_VARS)
587790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
597790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_SRC_FILES := shell.c
607790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
611c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu NoriLOCAL_C_INCLUDES := $(LOCAL_PATH)/../android $(call include-path-for, system-core)/cutils
627790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
631c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu NoriLOCAL_SHARED_LIBRARIES := libsqlite \
641c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu Nori            libicuuc \
651c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu Nori            libicui18n \
661c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu Nori            libutils
677790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
687790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(TARGET_ARCH),arm)
697790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_LDLIBS += -lpthread -ldl
707790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif
717790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
721c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu NoriLOCAL_CFLAGS += $(common_sqlite_flags)
737790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
747790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
757790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
76b7743da3573c9fa0a726181d8f4cd7190908f27dThe Android Open Source ProjectLOCAL_MODULE_TAGS := debug
777790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
787790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_MODULE := sqlite3
797790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
807790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectinclude $(BUILD_EXECUTABLE)
817790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
827790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif # !SDK_ONLY
837790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
847790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
857790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
867790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
877790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project## Build the host command line tool sqlite3
887790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
897790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project##
907790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
917790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectinclude $(CLEAR_VARS)
927790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
937790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_SRC_FILES := $(common_src_files) shell.c
947790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
951c9f731c5a080b9b26a36b58da954b793ad3cd3bVasu NoriLOCAL_CFLAGS += $(common_sqlite_flags) -DNO_ANDROID_FUNCS=1
967790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
977790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project# sqlite3MemsysAlarm uses LOG()
987790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_STATIC_LIBRARIES += liblog
997790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
1007790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
1017790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projecthave_readline := $(wildcard /usr/include/readline/readline.h)
1027790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projecthave_history := $(wildcard /usr/lib/libhistory*)
1037790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(strip $(have_readline)),)
1047790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_CFLAGS += -DHAVE_READLINE=1
1057790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif
1067790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
10771f6135e246c60c5ded00d36a0aa978521292a5eRaphaelifeq ($(strip $(USE_MINGW)),)
108e1542198c8ea4d244fbd7e97c22b02abff1ca850Alexey TarasovLOCAL_LDLIBS += -lpthread
109e1542198c8ea4d244fbd7e97c22b02abff1ca850Alexey Tarasovifneq ($(HOST_OS),freebsd)
110e1542198c8ea4d244fbd7e97c22b02abff1ca850Alexey TarasovLOCAL_LDLIBS += -ldl
111e1542198c8ea4d244fbd7e97c22b02abff1ca850Alexey Tarasovendif
11271f6135e246c60c5ded00d36a0aa978521292a5eRaphaelendif
1137790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
1147790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(strip $(have_readline)),)
115c548c5973ee191715d118a442c496982ca2ff484Jay Freeman (saurik)LOCAL_LDLIBS += -lreadline -lncurses
1167790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif
1177790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectifneq ($(strip $(have_history)),)
1187790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_LDLIBS += -lhistory
1197790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectendif
1207790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
1217790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source ProjectLOCAL_MODULE := sqlite3
1227790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
1237790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Projectinclude $(BUILD_HOST_EXECUTABLE)
1247790ef5367fe6731048c3e3a1c067f94b321cb4dThe Android Open Source Project
125