Skip to content

Commit de19154

Browse files
committed
Add sqlite3 recipe
1 parent b5640df commit de19154

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
LOCAL_PATH := $(call my-dir)/..
2+
3+
include $(CLEAR_VARS)
4+
5+
LOCAL_SRC_FILES := sqlite3.c
6+
7+
LOCAL_MODULE := sqlite3
8+
9+
include $(BUILD_SHARED_LIBRARY)
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
from pythonforandroid.toolchain import NDKRecipe, shprint, shutil, current_directory
2+
from os.path import join, exists
3+
import sh
4+
5+
class Sqlite3Recipe(NDKRecipe):
6+
version = '3.11.0'
7+
# Don't forget to change the URL when changing the version
8+
url = 'http://www.sqlite.com/2016/sqlite-amalgamation-3110000.zip'
9+
generated_libraries = ['sqlite3']
10+
11+
def should_build(self, arch):
12+
return not self.has_libs(arch, 'libsqlite3.so')
13+
14+
def prebuild_arch(self, arch):
15+
super(Sqlite3Recipe, self).prebuild_arch(arch)
16+
# Copy the Android make file
17+
sh.mkdir('-p', join(self.get_build_dir(arch.arch), 'jni'))
18+
shutil.copyfile(join(self.get_recipe_dir(), 'Android.mk'),
19+
join(self.get_build_dir(arch.arch), 'jni/Android.mk'))
20+
21+
def build_arch(self, arch, *extra_args):
22+
super(Sqlite3Recipe, self).build_arch(arch)
23+
# Copy the shared library
24+
shutil.copyfile(join(self.get_build_dir(arch.arch), 'libs', arch.arch, 'libsqlite3.so'),
25+
join(self.ctx.get_libs_dir(arch.arch), 'libsqlite3.so'))
26+
27+
def get_recipe_env(self, arch):
28+
env = super(Sqlite3Recipe, self).get_recipe_env(arch)
29+
env['NDK_PROJECT_PATH'] = self.get_build_dir(arch.arch)
30+
return env
31+
32+
recipe = Sqlite3Recipe()

0 commit comments

Comments
 (0)