summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFeng Mu <Feng.Mu@windriver.com>2016-06-01 09:06:41 +0800
committerMaxin B. John <maxin.john@intel.com>2016-08-09 12:28:33 +0300
commit8cb190d73209be0d9be14ea0612a9deff2d670f5 (patch)
tree965926be9ffefa0daefe09466b6a7f79e0059f42
parent4c9fa7bd9a00bacc55fb2217d62d42e887221f5b (diff)
downloadmeta-java-8cb190d73209be0d9be14ea0612a9deff2d670f5.tar.gz
javasqlite: add support
Javasqlite is a Java wrapper including a basic JDBC driver for SQLite 2/3. Signed-off-by: Feng Mu <Feng.Mu@windriver.com> Signed-off-by: Maxin B. John <maxin.john@intel.com>
-rw-r--r--recipes-core/javasqlite/files/0001-fix-errors-during-cross-compile.patch535
-rw-r--r--recipes-core/javasqlite/javasqlite_20150419.bb42
2 files changed, 577 insertions, 0 deletions
diff --git a/recipes-core/javasqlite/files/0001-fix-errors-during-cross-compile.patch b/recipes-core/javasqlite/files/0001-fix-errors-during-cross-compile.patch
new file mode 100644
index 0000000..fc0da70
--- /dev/null
+++ b/recipes-core/javasqlite/files/0001-fix-errors-during-cross-compile.patch
@@ -0,0 +1,535 @@
1From 7714a4c0e589f8b654e1270575512555ea4ad6c7 Mon Sep 17 00:00:00 2001
2From: Feng Mu <Feng.Mu@windriver.com>
3Date: Fri, 27 May 2016 16:44:33 +0800
4Subject: [PATCH] fix errors during cross compile
5
6Upstream-Status: Inappropriate [embedded specific]
7
8Signed-off-by: Feng Mu <Feng.Mu@windriver.com>
9---
10 Makefile.in | 56 +++++++--
11 configure.in | 382 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
12 2 files changed, 423 insertions(+), 14 deletions(-)
13
14diff --git a/Makefile.in b/Makefile.in
15index aa46b24..c0fd87f 100644
16--- a/Makefile.in
17+++ b/Makefile.in
18@@ -5,9 +5,13 @@ CC = @CC@
19 HOSTCC = @HOSTCC@
20 LIBTOOL = ./libtool
21 SQLITE_INC = @SQLITE_INC@
22+SQLITE_TARGET_INC = @SQLITE_TARGET_INC@
23 SQLITE_LIB = @SQLITE_LIB@
24+SQLITE_TARGET_LIB = @SQLITE_TARGET_LIB@
25 SQLITE3_INC = @SQLITE3_INC@
26+SQLITE3_TARGET_INC = @SQLITE3_TARGET_INC@
27 SQLITE3_LIB = @SQLITE3_LIB@
28+SQLITE3_TARGET_LIB = @SQLITE3_TARGET_LIB@
29 SQLITE3_A10N_C = @SQLITE3_A10N_C@
30 SQLITE3_A10N_O = @SQLITE3_A10N_O@
31 JAVAH = @JAVAH@
32@@ -23,7 +27,7 @@ INSTALL = @INSTALL@
33 JAR_DIR = @JAR_DIR@
34 NATIVE_LIB_DIR = @NATIVE_LIB_DIR@
35
36-CFLAGS= $(JNIINCLUDE) $(SQLITE_INC) $(SQLITE3_INC) \
37+CFLAGS_HOST= $(JNIINCLUDE) $(SQLITE_INC) $(SQLITE3_INC) \
38 -DHAVE_SQLITE2=@HAVE_SQLITE2@ -DHAVE_SQLITE3=@HAVE_SQLITE3@ \
39 -DHAVE_SQLITE_FUNCTION_TYPE=@HAVE_SQLITE_FUNCTION_TYPE@ \
40 -DHAVE_SQLITE_OPEN_AUX_FILE=@HAVE_SQLITE_OPEN_AUX_FILE@ \
41@@ -53,9 +57,43 @@ CFLAGS= $(JNIINCLUDE) $(SQLITE_INC) $(SQLITE3_INC) \
42 -DHAVE_SQLITE3_STATUS=@HAVE_SQLITE3_STATUS@ \
43 -DHAVE_SQLITE3_DB_STATUS=@HAVE_SQLITE3_DB_STATUS@ \
44 -DHAVE_SQLITE3_STMT_STATUS=@HAVE_SQLITE3_STMT_STATUS@ \
45- @VALIST_FLAGS@ @CFLAGS@ @SQLITE3_A10N_FLAGS@
46+ @VALIST_FLAGS@ @SQLITE3_A10N_FLAGS@
47+
48+LIBS_HOST= @SQLITE_LIB@ @SQLITE3_LIB@ @LDFLAGS@
49+
50+CFLAGS_TARGET= $(JNIINCLUDE) $(SQLITE_TARGET_INC) $(SQLITE3_INC) \
51+ -DHAVE_SQLITE2_TARGET=@HAVE_SQLITE2_TARGET@ -DHAVE_SQLITE3=@HAVE_SQLITE3@ \
52+ -DHAVE_SQLITE_TARGET_FUNCTION_TYPE=@HAVE_SQLITE_TARGET_FUNCTION_TYPE@ \
53+ -DHAVE_SQLITE_TARGET_OPEN_AUX_FILE=@HAVE_SQLITE_TARGET_OPEN_AUX_FILE@ \
54+ -DHAVE_SQLITE_TARGET_SET_AUTHORIZER=@HAVE_SQLITE_TARGET_SET_AUTHORIZER@ \
55+ -DHAVE_SQLITE_TARGET_TRACE=@HAVE_SQLITE_TARGET_TRACE@ \
56+ -DHAVE_SQLITE_TARGET_COMPILE=@HAVE_SQLITE_TARGET_COMPILE@ \
57+ -DHAVE_SQLITE_TARGET_PROGRESS_HANDLER=@HAVE_SQLITE_TARGET_PROGRESS_HANDLER@ \
58+ -DHAVE_SQLITE3_MALLOC=@HAVE_SQLITE3_MALLOC@ \
59+ -DHAVE_SQLITE3_PREPARE_V2=@HAVE_SQLITE3_PREPARE_V2@ \
60+ -DHAVE_SQLITE3_PREPARE16_V2=@HAVE_SQLITE3_PREPARE16_V2@ \
61+ -DHAVE_SQLITE3_BIND_ZEROBLOB=@HAVE_SQLITE3_BIND_ZEROBLOB@ \
62+ -DHAVE_SQLITE3_CLEAR_BINDINGS=@HAVE_SQLITE3_CLEAR_BINDINGS@ \
63+ -DHAVE_SQLITE3_COLUMN_TABLE_NAME16=@HAVE_SQLITE3_COLUMN_TABLE_NAME16@ \
64+ -DHAVE_SQLITE3_COLUMN_DATABASE_NAME16=@HAVE_SQLITE3_COLUMN_DATABASE_NAME16@ \
65+ -DHAVE_SQLITE3_COLUMN_ORIGIN_NAME16=@HAVE_SQLITE3_COLUMN_ORIGIN_NAME16@ \
66+ -DHAVE_SQLITE3_BIND_PARAMETER_COUNT=@HAVE_SQLITE3_BIND_PARAMETER_COUNT@ \
67+ -DHAVE_SQLITE3_BIND_PARAMETER_NAME=@HAVE_SQLITE3_BIND_PARAMETER_NAME@ \
68+ -DHAVE_SQLITE3_BIND_PARAMETER_INDEX=@HAVE_SQLITE3_BIND_PARAMETER_INDEX@ \
69+ -DHAVE_SQLITE3_RESULT_ZEROBLOB=@HAVE_SQLITE3_RESULT_ZEROBLOB@ \
70+ -DHAVE_SQLITE3_INCRBLOBIO=@HAVE_SQLITE3_INCRBLOBIO@ \
71+ -DHAVE_SQLITE3_KEY=@HAVE_SQLITE3_KEY@ \
72+ -DHAVE_SQLITE3_SHARED_CACHE=@HAVE_SQLITE3_SHARED_CACHE@ \
73+ -DHAVE_SQLITE3_OPEN_V2=@HAVE_SQLITE3_OPEN_V2@ \
74+ -DHAVE_SQLITE3_LOAD_EXTENSION=@HAVE_SQLITE3_LOAD_EXTENSION@ \
75+ -DHAVE_SQLITE3_BACKUPAPI=@HAVE_SQLITE3_BACKUPAPI@ \
76+ -DHAVE_SQLITE3_PROFILE=@HAVE_SQLITE3_PROFILE@ \
77+ -DHAVE_SQLITE3_STATUS=@HAVE_SQLITE3_STATUS@ \
78+ -DHAVE_SQLITE3_DB_STATUS=@HAVE_SQLITE3_DB_STATUS@ \
79+ -DHAVE_SQLITE3_STMT_STATUS=@HAVE_SQLITE3_STMT_STATUS@ \
80+ @VALIST_FLAGS@ @SQLITE3_A10N_FLAGS@
81
82-LIBS= @SQLITE_LIB@ @SQLITE3_LIB@ @LDFLAGS@
83+LIBS_TARGET= @SQLITE_TARGET_LIB@ @SQLITE3_TARGET_LIB@ @LDFLAGS@
84
85 # Add new suffixes
86 .SUFFIXES: .java .class .lo .la .jar
87@@ -170,20 +208,18 @@ native/sqlite_jni.h: SQLite/Database.class SQLite/Vm.class \
88 SQLite.Profile
89
90 sqlite_jni.lo: native/sqlite_jni.h native/sqlite_jni.c
91- $(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS) native/sqlite_jni.c
92+ $(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS_TARGET) native/sqlite_jni.c
93
94 $(SQLITE3_A10N_O): $(SQLITE3_A10N_C)
95- $(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS) $(SQLITE3_A10N_C)
96+ $(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS_TARGET) $(SQLITE3_A10N_C)
97
98 libsqlite_jni.la: sqlite_jni.lo $(SQLITE3_A10N_O)
99- $(LIBTOOL) --mode=link $(CC) $(CFLAGS) -o libsqlite_jni.la \
100+ $(LIBTOOL) --mode=link $(CC) $(CFLAGS_TARGET) -o libsqlite_jni.la \
101 sqlite_jni.lo $(SQLITE3_A10N_O) -rpath $(NATIVE_LIB_DIR) \
102- -module -avoid-version $(LIBS)
103+ -module -avoid-version $(LIBS_TARGET)
104
105 native/mkconst: native/mkconst.c
106- $(LIBTOOL) --mode=link $(HOSTCC) @HOST_CFLAGS@ $(SQLITE_INC) \
107- $(SQLITE3_INC) -DHAVE_SQLITE2=@HAVE_SQLITE2@ \
108- -DHAVE_SQLITE3=@HAVE_SQLITE3@ -o native/mkconst native/mkconst.c
109+ $(LIBTOOL) --mode=link $(HOSTCC) $(CFLAGS_HOST) -o native/mkconst native/mkconst.c
110
111 Makefile: Makefile.in configure config.status
112 ./config.status
113diff --git a/configure.in b/configure.in
114index c620bb6..61b3c2a 100644
115--- a/configure.in
116+++ b/configure.in
117@@ -32,7 +32,7 @@ if test "x$JAR_DIR" = "x" ; then
118 fi
119
120 ##########
121-# Find SQLite header file and library
122+# Find SQLite header file and library on host sysroot
123 #
124 AC_ARG_WITH(sqlite, [ --with-sqlite=DIR use SQLite header/lib from DIR],
125 SQLITE_DIR=$withval)
126@@ -148,7 +148,122 @@ AC_SUBST(HAVE_SQLITE_COMPILE)
127 AC_SUBST(HAVE_SQLITE_PROGRESS_HANDLER)
128
129 ##########
130-# Find SQLite3 header file and library
131+# Find SQLite header file and library on target sysroot
132+#
133+AC_ARG_WITH(sqlite-target, [ --with-sqlite-target=DIR use target sysroot SQLite header/lib from DIR],
134+ SQLITE_TARGET_DIR=$withval)
135+if test ! -n "$SQLITE_TARGET_DIR" -a -d "$SQLITE_TARGET_DIR" ; then
136+ AC_MSG_WARN([SQLite2-target directory $SQLITE_TARGET_DIR does not exist])
137+fi
138+
139+SQLITE_TARGET_INC=""
140+SQLITE_TARGET_LIB=""
141+HAVE_SQLITE2_TARGET=0
142+
143+if test "$with_sqlite-target" != "no" ; then
144+ if test -z "$SQLITE_TARGET_DIR" ; then
145+ SQLITE_TARGET_DIR="../sqlite /usr /usr/local /opt"
146+ fi
147+ AC_MSG_CHECKING([for SQlite header and library])
148+ SQLITE_TARGET_INC=UNKNOWN
149+ SQLITE_TARGET_LIB=UNKNOWN
150+ for i in $SQLITE_TARGET_DIR ; do
151+ if test -r $i/sqlite.h ; then
152+ if test -r $i/libsqlite.la ; then
153+ SQLITE_TARGET_INC="-I$i"
154+ SQLITE_TARGET_LIB="$i/libsqlite.la"
155+ SQLITE_TARGET_LIBDIR="-L$i"
156+ break
157+ elif test -r $i/libsqlite.a ; then
158+ SQLITE_TARGET_INC="-I$i"
159+ SQLITE_TARGET_LIB="$i/libsqlite.a"
160+ SQLITE_TARGET_LIBDIR="-L$i"
161+ break
162+ fi
163+ elif test -r $i/include/sqlite.h ; then
164+ for lib in lib64 lib ; do
165+ if test -r $i/$lib/libsqlite.la ; then
166+ SQLITE_TARGET_INC="-I$i/include"
167+ SQLITE_TARGET_LIB="$i/$lib/libsqlite.la"
168+ SQLITE_TARGET_LIBDIR="-L$i/$lib"
169+ break
170+ elif test -r $i/$lib/libsqlite.a ; then
171+ SQLITE_TARGET_INC="-I$i/include"
172+ SQLITE_TARGET_LIB="$i/$lib/libsqlite.a"
173+ SQLITE_TARGET_LIBDIR="-L$i/$lib"
174+ break
175+ elif test -r $i/$lib/libsqlite.so ; then
176+ SQLITE_TARGET_INC="-I$i/include"
177+ SQLITE_TARGET_LIB="-lsqlite"
178+ SQLITE_TARGET_LIBDIR="-L$i/$lib"
179+ break
180+ fi
181+ done
182+ if test "$SQLITE_TARGET_LIB" != "UNKNOWN" ; then
183+ break
184+ fi
185+ fi
186+ done
187+ if test "$SQLITE_TARGET_LIB" = "UNKNOWN" ; then
188+ lib=`pkg-config sqlite --libs 2>/dev/null`
189+ if test -n "$lib" ; then
190+ SQLITE_TARGET_INC=`pkg-config sqlite --cflags-only-I`
191+ SQLITE_TARGET_LIB="$lib"
192+ SQLITE_TARGET_LIBDIR=`pkg-config sqlite --libs-only-L`
193+ fi
194+ fi
195+ if test "$SQLITE_TARGET_INC" = "UNKNOWN" -o "$SQLITE_TARGET_LIB" = "UNKNOWN" ; then
196+ AC_MSG_RESULT(no)
197+ AC_MSG_WARN(SQLite2 header files and/or library not found on target sysroot)
198+ SQLITE_TARGET_INC=""
199+ SQLITE_TARGET_LIB=""
200+ HAVE_SQLITE2_TARGET=0
201+ else
202+ HAVE_SQLITE2_TARGET=1
203+ AC_MSG_RESULT(yes)
204+ fi
205+fi
206+AC_SUBST(SQLITE_TARGET_INC)
207+AC_SUBST(SQLITE_TARGET_LIB)
208+AC_SUBST(HAVE_SQLITE2_TARGET)
209+
210+##########
211+# Check SQLite-TARGET features
212+#
213+HAVE_SQLITE_TARGET_FUNCTION_TYPE=0
214+HAVE_SQLITE_TARGET_OPEN_AUX_FILE=0
215+HAVE_SQLITE_TARGET_SET_AUTHORIZER=0
216+HAVE_SQLITE_TARGET_TRACE=0
217+HAVE_SQLITE_TARGET_COMPILE=0
218+HAVE_SQLITE_TARGET_PROGRESS_HANDLER=0
219+if test "$HAVE_SQLITE2_TARGET" = 1 ; then
220+ saved_CFLAGS=$CFLAGS
221+ CFLAGS="$CFLAGS $SQLITE_TARGET_INC"
222+ saved_LIBS=$LIBS
223+ LIBS="$LIBS $SQLITE_TARGET_LIBDIR"
224+ AC_CHECK_LIB(sqlite,sqlite_function_type,
225+ HAVE_SQLITE_FUNCTION_TYPE=1,HAVE_SQLITE_FUNCTION_TYPE=0)
226+ AC_CHECK_LIB(sqlite,sqlite_open_aux_file,
227+ HAVE_SQLITE_OPEN_AUX_FILE=1,HAVE_SQLITE_OPEN_AUX_FILE=0)
228+ AC_CHECK_LIB(sqlite,sqlite_set_authorizer,
229+ HAVE_SQLITE_SET_AUTHORIZER=1,HAVE_SQLITE_SET_AUTHORIZER=0)
230+ AC_CHECK_LIB(sqlite,sqlite_trace,
231+ HAVE_SQLITE_TRACE=1,HAVE_SQLITE_TRACE=0)
232+ AC_CHECK_LIB(sqlite,sqlite_compile,
233+ HAVE_SQLITE_COMPILE=1,HAVE_SQLITE_COMPILE=0)
234+ AC_CHECK_LIB(sqlite,sqlite_progress_handler,
235+ HAVE_SQLITE_PROGRESS_HANDLER=1,HAVE_SQLITE_PROGRESS_HANDLER=0)
236+ LIBS=$saved_LIBS
237+ CFLAGS=$saved_CFLAGS
238+fi
239+AC_SUBST(HAVE_SQLITE_TARGET_FUNCTION_TYPE)
240+AC_SUBST(HAVE_SQLITE_TARGET_OPEN_AUX_FILE)
241+AC_SUBST(HAVE_SQLITE_TARGET_SET_AUTHORIZER)
242+AC_SUBST(HAVE_SQLITE_TARGET_TRACE)
243+AC_SUBST(HAVE_SQLITE_TARGET_COMPILE)
244+AC_SUBST(HAVE_SQLITE_TARGET_PROGRESS_HANDLER)
245+##########
246+# Find SQLite3 header file and library on host sysroot
247 #
248 AC_ARG_WITH(sqlite3,
249 [ --with-sqlite3=DIR use SQLite3 header/lib from DIR],
250@@ -251,7 +366,7 @@ AC_SUBST(SQLITE3_LIB)
251 AC_SUBST(HAVE_SQLITE3)
252
253 ##########
254-# Check SQLite3 features
255+# Check SQLite3 features on host sysroot
256 #
257 AC_ARG_ENABLE(load-extension,
258 [ --enable-load-extension support for loading SQLite 3.x extensions.
259@@ -402,6 +517,264 @@ AC_SUBST(SQLITE3_A10N_C)
260 AC_SUBST(SQLITE3_A10N_O)
261 AC_SUBST(SQLITE3_A10N_FLAGS)
262
263+
264+##########
265+# Find SQLite3 header file and library on target sysroot
266+#
267+AC_ARG_WITH(sqlite3-target,
268+ [ --with-sqlite3-target=DIR use target sysroot SQLite3 header/lib from DIR],
269+ SQLITE3_TARGET_DIR=$withval)
270+if test ! -n "$SQLITE3_TARGET_DIR" -a -d "$SQLITE3_TARGET_DIR" ; then
271+ AC_MSG_WARN([SQLite3 directory $SQLITE3_TARGET_DIR does not exist])
272+fi
273+
274+if test -z "$SQLITE3_TARGET_DIR" ; then
275+ SQLITE3_TARGET_DIR="../sqlite /usr /usr/local /opt"
276+fi
277+
278+AC_MSG_CHECKING([for SQLite3 header and library])
279+SQLITE3_TARGET_INC=UNKNOWN
280+SQLITE3_TARGET_LIB=UNKNOWN
281+for i in $SQLITE3_TARGET_DIR ; do
282+ if test -r $i/sqlite3.h ; then
283+ if test -r $i/sqlite3.c ; then
284+ SQLITE3_TARGET_INC="-I$i"
285+ SQLITE3_TARGET_LIB="unknown"
286+ SQLITE3_TARGET_LIBDIR=""
287+ SQLITE3_A10N_C="$i/sqlite3.c"
288+ SQLITE3_A10N_O="sqlite3.lo"
289+ break
290+ elif test -r $i/libsqlite3.la ; then
291+ SQLITE3_TARGET_INC="-I$i"
292+ SQLITE3_TARGET_LIB="$i/libsqlite3.la"
293+ SQLITE3_TARGET_LIBDIR="-L$i"
294+ break
295+ elif test -r $i/libsqlite3.a ; then
296+ SQLITE3_TARGET_INC="-I$i"
297+ SQLITE3_TARGET_LIB="$i/libsqlite3.a"
298+ SQLITE3_TARGET_LIBDIR="-L$i"
299+ break
300+ elif test -r $i/see-sqlite3.c ; then
301+ SQLITE3_TARGET_INC="-I$i"
302+ SQLITE3_TARGET_LIB="unknown"
303+ SQLITE3_TARGET_LIBDIR=""
304+ SQLITE3_A10N_C="$i/see-sqlite3.c"
305+ SQLITE3_A10N_O="see-sqlite3.lo"
306+ SQLITE3_IS_BUILD_WITH_SEE="yes"
307+ HAVE_SQLITE3_KEY=1
308+ break
309+ fi
310+ elif test -r $i/include/sqlite3.h ; then
311+ for lib in lib64 lib ; do
312+ if test -r $i/$lib/libsqlite3.la ; then
313+ SQLITE3_TARGET_INC="-I$i/include"
314+ SQLITE3_TARGET_LIB="$i/$lib/libsqlite3.la"
315+ SQLITE3_TARGET_LIBDIR="-L$i/$lib"
316+ break
317+ elif test -r $i/$lib/libsqlite3.a ; then
318+ SQLITE3_TARGET_INC="-I$i/include"
319+ SQLITE3_TARGET_LIB="$i/$lib/libsqlite3.a"
320+ SQLITE3_TARGET_LIBDIR="-L$i/$lib"
321+ break
322+ elif test -r $i/$lib/libsqlite3.so ; then
323+ SQLITE3_TARGET_INC="-I$i/include"
324+ SQLITE3_TARGET_LIB="-lsqlite3"
325+ SQLITE3_TARGET_LIBDIR="-L$i/$lib"
326+ break
327+ fi
328+ done
329+ if test "$SQLITE3_TARGET_LIB" != "UNKNOWN" ; then
330+ break
331+ fi
332+ fi
333+done
334+if test "$SQLITE3_TARGET_LIB" = "UNKNOWN" ; then
335+ lib=`pkg-config sqlite3 --libs 2>/dev/null`
336+ if test -n "$lib" ; then
337+ SQLITE3_TARGET_INC=`pkg-config sqlite3 --cflags-only-I`
338+ SQLITE3_TARGET_LIB="$lib"
339+ SQLITE3_TARGET_LIBDIR=`pkg-config sqlite3 --libs-only-L`
340+ fi
341+fi
342+if test "$SQLITE3_TARGET_INC" = "UNKNOWN" -o "$SQLITE3_TARGET_LIB" = "UNKNOWN" ; then
343+ AC_MSG_RESULT(no)
344+ AC_MSG_WARN(SQLite3 header files and/or library not found)
345+ SQLITE3_TARGET_INC=""
346+ SQLITE3_TARGET_LIB=""
347+ HAVE_SQLITE3_TARGET=0
348+elif test -n "$SQLITE3_A10N_C" ; then
349+ SQLITE3_A10N_FLAGS="$SQLITE3_A10N_FLAGS -DSQLITE_ENABLE_COLUMN_METADATA=1"
350+ SQLITE3_A10N_FLAGS="$SQLITE3_A10N_FLAGS -DSQLITE_DLL=1"
351+ HAVE_SQLITE3_TARGET=1
352+ if test "$SQLITE3_IS_BUILT_WITH_SEE" = "yes" ; then
353+ SQLITE3_A10N_FLAGS="$SQLITE3_A10N_FLAGS -DSQLITE_HAS_CODEC=1"
354+ AC_MSG_RESULT([yes, using SEE])
355+ else
356+ AC_MSG_RESULT(yes)
357+ fi
358+else
359+ HAVE_SQLITE3_TARGET=1
360+ AC_MSG_RESULT(yes)
361+fi
362+AC_SUBST(SQLITE3_TARGET_INC)
363+AC_SUBST(SQLITE3_TARGET_LIB)
364+AC_SUBST(HAVE_SQLITE3_TARGET)
365+
366+##########
367+# Check SQLite3 features on target sysroot
368+#
369+AC_ARG_ENABLE(load-extension,
370+ [ --enable-load-extension support for loading SQLite 3.x extensions.
371+ ***** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *****
372+ *** Note that the --enable-load-extension option makes it ***
373+ *** possible for library users to load arbitrary native code ***
374+ *** into the JVM bypassing its security manager checks, and ***
375+ *** thus should be enabled only if you know what you're doing. ***
376+ *******************************************************************])
377+test "x$enable_load_extension" = "xyes" || enable_load_extension=no
378+HAVE_SQLITE3_TARGET_MALLOC=0
379+HAVE_SQLITE3_TARGET_PREPARE_V2=0
380+HAVE_SQLITE3_TARGET_PREPARE16_V2=0
381+HAVE_SQLITE3_TARGET_BIND_ZEROBLOB=0
382+HAVE_SQLITE3_TARGET_CLEAR_BINDINGS=0
383+HAVE_SQLITE3_TARGET_COLUMN_TABLE_NAME16=0
384+HAVE_SQLITE3_TARGET_COLUMN_DATABASE_NAME16=0
385+HAVE_SQLITE3_TARGET_COLUMN_ORIGIN_NAME16=0
386+HAVE_SQLITE3_TARGET_BIND_PARAMETER_COUNT=0
387+HAVE_SQLITE3_TARGET_BIND_PARAMETER_NAME=0
388+HAVE_SQLITE3_TARGET_BIND_PARAMETER_INDEX=0
389+HAVE_SQLITE3_TARGET_RESULT_ZEROBLOB=0
390+HAVE_SQLITE3_TARGET_TARGET_INCRBLOBIO=0
391+HAVE_SQLITE3_TARGET_KEY=0
392+HAVE_SQLITE3_TARGET_SHARED_CACHE=0
393+HAVE_SQLITE3_TARGET_OPEN_V2=0
394+HAVE_SQLITE3_TARGET_LOAD_EXTENSION=0
395+HAVE_SQLITE3_TARGET_BACKUPAPI=0
396+HAVE_SQLITE3_TARGET_PROFILE=0
397+HAVE_SQLITE3_TARGET_STATUS=0
398+HAVE_SQLITE3_TARGET_DB_STATUS=0
399+HAVE_SQLITE3_TARGET_STMT_STATUS=0
400+if test "$HAVE_SQLITE3_TARGET" = 1 -a -n "$SQLITE3_A10N_C" ; then
401+ HAVE_SQLITE3_TARGET_MALLOC=1
402+ HAVE_SQLITE3_TARGET_PREPARE_V2=1
403+ HAVE_SQLITE3_TARGET_PREPARE16_V2=1
404+ HAVE_SQLITE3_TARGET_BIND_ZEROBLOB=1
405+ HAVE_SQLITE3_TARGET_CLEAR_BINDINGS=1
406+ HAVE_SQLITE3_TARGET_COLUMN_TABLE_NAME16=1
407+ HAVE_SQLITE3_TARGET_COLUMN_DATABASE_NAME16=1
408+ HAVE_SQLITE3_TARGET_COLUMN_ORIGIN_NAME16=1
409+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_COUNT=1
410+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_NAME=1
411+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_INDEX=1
412+ HAVE_SQLITE3_TARGET_RESULT_ZEROBLOB=1
413+ HAVE_SQLITE3_TARGET_TARGET_INCRBLOBIO=1
414+ HAVE_SQLITE3_TARGET_SHARED_CACHE=1
415+ HAVE_SQLITE3_TARGET_OPEN_V2=1
416+ if test "$enable_load_extension" = "yes" ; then
417+ HAVE_SQLITE3_TARGET_LOAD_EXTENSION=1
418+ fi
419+ HAVE_SQLITE3_TARGET_BACKUPAPI=1
420+ HAVE_SQLITE3_TARGET_PROFILE=1
421+ HAVE_SQLITE3_TARGET_STATUS=1
422+ HAVE_SQLITE3_TARGET_DB_STATUS=1
423+ HAVE_SQLITE3_TARGET_STMT_STATUS=1
424+fi
425+if test "$HAVE_SQLITE3_TARGET" = 1 -a -z "$SQLITE3_A10N_C" ; then
426+ saved_CFLAGS=$CFLAGS
427+ CFLAGS="$CFLAGS $SQLITE3_TARGET_INC"
428+ saved_LIBS=$LIBS
429+ LIBS="$LIBS $SQLITE3_TARGET_LIBDIR"
430+ AC_CHECK_LIB(sqlite3,sqlite3_malloc,
431+ HAVE_SQLITE3_TARGET_MALLOC=1,HAVE_SQLITE3_TARGET_MALLOC=0)
432+ AC_CHECK_LIB(sqlite3,sqlite3_prepare_v2,
433+ HAVE_SQLITE3_TARGET_PREPARE_V2=1,HAVE_SQLITE3_TARGET_PREPARE_V2=0)
434+ AC_CHECK_LIB(sqlite3,sqlite3_prepare16_v2,
435+ HAVE_SQLITE3_TARGET_PREPARE16_V2=1,HAVE_SQLITE3_TARGET_PREPARE16_V2=0)
436+ AC_CHECK_LIB(sqlite3,sqlite3_bind_zeroblob,
437+ HAVE_SQLITE3_TARGET_BIND_ZEROBLOB=1,HAVE_SQLITE3_TARGET_BIND_ZEROBLOB=0)
438+ AC_CHECK_LIB(sqlite3,sqlite3_clear_bindings,
439+ HAVE_SQLITE3_TARGET_CLEAR_BINDINGS=1,HAVE_SQLITE3_TARGET_CLEAR_BINDINGS=0)
440+ AC_CHECK_LIB(sqlite3,sqlite3_column_table_name16,
441+ HAVE_SQLITE3_TARGET_COLUMN_TABLE_NAME16=1,
442+ HAVE_SQLITE3_TARGET_COLUMN_TABLE_NAME16=0)
443+ AC_CHECK_LIB(sqlite3,sqlite3_column_database_name16,
444+ HAVE_SQLITE3_TARGET_COLUMN_DATABASE_NAME16=1,
445+ HAVE_SQLITE3_TARGET_COLUMN_DATABASE_NAME16=0)
446+ AC_CHECK_LIB(sqlite3,sqlite3_column_origin_name16,
447+ HAVE_SQLITE3_TARGET_COLUMN_ORIGIN_NAME16=1,
448+ HAVE_SQLITE3_TARGET_COLUMN_ORIGIN_NAME16=0)
449+ AC_CHECK_LIB(sqlite3,sqlite3_bind_parameter_count,
450+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_COUNT=1,
451+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_COUNT=0)
452+ AC_CHECK_LIB(sqlite3,sqlite3_bind_parameter_name,
453+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_NAME=1,
454+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_NAME=0)
455+ AC_CHECK_LIB(sqlite3,sqlite3_bind_parameter_index,
456+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_INDEX=1,
457+ HAVE_SQLITE3_TARGET_BIND_PARAMETER_INDEX=0)
458+ AC_CHECK_LIB(sqlite3,sqlite3_result_zeroblob,
459+ HAVE_SQLITE3_TARGET_RESULT_ZEROBLOB=1,HAVE_SQLITE3_TARGET_RESULT_ZEROBLOB=0)
460+ AC_CHECK_LIB(sqlite3,sqlite3_blob_open,
461+ HAVE_SQLITE3_TARGET_TARGET_INCRBLOBIO=1,HAVE_SQLITE3_TARGET_TARGET_INCRBLOBIO=0)
462+ AC_CHECK_LIB(sqlite3,sqlite3_key,
463+ HAVE_SQLITE3_TARGET_KEY=1,HAVE_SQLITE3_TARGET_KEY=0)
464+ AC_CHECK_LIB(sqlite3,sqlite3_rekey,
465+ ,HAVE_SQLITE3_TARGET_KEY=0)
466+ AC_CHECK_LIB(sqlite3,sqlite3_enable_shared_cache,
467+ HAVE_SQLITE3_TARGET_SHARED_CACHE=1,HAVE_SQLITE3_TARGET_SHARED_CACHE=0)
468+ AC_CHECK_LIB(sqlite3,sqlite3_open_v2,
469+ HAVE_SQLITE3_TARGET_OPEN_V2=1,HAVE_SQLITE3_TARGET_OPEN_V2=0)
470+ if test "$enable_load_extension" = "yes" ; then
471+ AC_CHECK_LIB(sqlite3,sqlite3_load_extension,
472+ HAVE_SQLITE3_TARGET_LOAD_EXTENSION=1,HAVE_SQLITE3_TARGET_LOAD_EXTENSION=0)
473+ fi
474+ AC_CHECK_LIB(sqlite3,sqlite3_backup_init,
475+ HAVE_SQLITE3_TARGET_BACKUPAPI=1,HAVE_SQLITE3_TARGET_BACKUPAPI=0)
476+ AC_CHECK_LIB(sqlite3,sqlite3_profile,
477+ HAVE_SQLITE3_TARGET_PROFILE=1,HAVE_SQLITE3_TARGET_PROFILE=0)
478+ AC_CHECK_LIB(sqlite3,sqlite3_status,
479+ HAVE_SQLITE3_TARGET_STATUS=1,HAVE_SQLITE3_TARGET_STATUS=0)
480+ AC_CHECK_LIB(sqlite3,sqlite3_db_status,
481+ HAVE_SQLITE3_TARGET_DB_STATUS=1,HAVE_SQLITE3_TARGET_DB_STATUS=0)
482+ AC_CHECK_LIB(sqlite3,sqlite3_stmt_status,
483+ HAVE_SQLITE3_TARGET_STMT_STATUS=1,HAVE_SQLITE3_TARGET_STMT_STATUS=0)
484+ LIBS=$saved_LIBS
485+ CFLAGS=$saved_CFLAGS
486+fi
487+AC_SUBST(HAVE_SQLITE3_TARGET_MALLOC)
488+AC_SUBST(HAVE_SQLITE3_TARGET_PREPARE_V2)
489+AC_SUBST(HAVE_SQLITE3_TARGET_PREPARE16_V2)
490+AC_SUBST(HAVE_SQLITE3_TARGET_BIND_ZEROBLOB)
491+AC_SUBST(HAVE_SQLITE3_TARGET_CLEAR_BINDINGS)
492+AC_SUBST(HAVE_SQLITE3_TARGET_COLUMN_TABLE_NAME16)
493+AC_SUBST(HAVE_SQLITE3_TARGET_COLUMN_DATABASE_NAME16)
494+AC_SUBST(HAVE_SQLITE3_TARGET_COLUMN_ORIGIN_NAME16)
495+AC_SUBST(HAVE_SQLITE3_TARGET_BIND_PARAMETER_COUNT)
496+AC_SUBST(HAVE_SQLITE3_TARGET_BIND_PARAMETER_NAME)
497+AC_SUBST(HAVE_SQLITE3_TARGET_BIND_PARAMETER_INDEX)
498+AC_SUBST(HAVE_SQLITE3_TARGET_RESULT_ZEROBLOB)
499+AC_SUBST(HAVE_SQLITE3_TARGET_TARGET_INCRBLOBIO)
500+AC_SUBST(HAVE_SQLITE3_TARGET_KEY)
501+AC_SUBST(HAVE_SQLITE3_TARGET_SHARED_CACHE)
502+AC_SUBST(HAVE_SQLITE3_TARGET_OPEN_V2)
503+AC_SUBST(HAVE_SQLITE3_TARGET_LOAD_EXTENSION)
504+AC_SUBST(HAVE_SQLITE3_TARGET_BACKUPAPI)
505+AC_SUBST(HAVE_SQLITE3_TARGET_PROFILE)
506+AC_SUBST(HAVE_SQLITE3_TARGET_STATUS)
507+AC_SUBST(HAVE_SQLITE3_TARGET_DB_STATUS)
508+AC_SUBST(HAVE_SQLITE3_TARGET_STMT_STATUS)
509+
510+if test -z "$SQLITE3_A10N_C" ; then
511+ SQLITE3_A10N_C="native/dummy.c"
512+ SQLITE3_A10N_O="dummy.lo"
513+fi
514+AC_SUBST(SQLITE3_A10N_C)
515+AC_SUBST(SQLITE3_A10N_O)
516+AC_SUBST(SQLITE3_A10N_FLAGS)
517+
518+
519+
520+
521 ##########
522 # Any usable SQLite found ?
523 #
524@@ -565,7 +938,7 @@ if test "x$JDBCVER" = "x" ; then
525 $JAVA_RUN -version 2>&1 | grep 'version "1.4' >/dev/null && JDBCVER=JDBC2x
526 $JAVA_RUN -version 2>&1 | grep 'version "1.5' >/dev/null && JDBCVER=JDBC2y
527 $JAVA_RUN -version 2>&1 | grep 'version "1.6' >/dev/null && JDBCVER=JDBC2z
528- $JAVA_RUN -version 2>&1 | grep 'version "1.[78]' >/dev/null && JDBCVER=JDBC2z1
529+ $JAVA_RUN -version 2>&1 | grep 'version "1.@<:@78@:>@' >/dev/null && JDBCVER=JDBC2z1
530 $JAVA_RUN -version 2>&1 | grep 'JSR169' >/dev/null && JDBCVER=JDBC0
531 else
532 AC_MSG_WARN([overriding JDBC driver: $JDBCVER])
533--
5341.9.1
535
diff --git a/recipes-core/javasqlite/javasqlite_20150419.bb b/recipes-core/javasqlite/javasqlite_20150419.bb
new file mode 100644
index 0000000..d721d66
--- /dev/null
+++ b/recipes-core/javasqlite/javasqlite_20150419.bb
@@ -0,0 +1,42 @@
1SUMMARY = "a Java wrapper including a basic JDBC driver for SQLite"
2
3DESCRIPTION = "\
4This is a Java wrapper including a basic JDBC driver for the SQLite 2/3 \
5database engine. It is designed using JNI to interface to the SQLite API. \
6That API is wrapped by methods in the SQLite.Database class."
7
8LICENSE = "BSD"
9SECTION = "application"
10PR = "r0"
11SRC_URI = " \
12 http://www.ch-werner.de/javasqlite/${BPN}-${PV}.tar.gz \
13 file://0001-fix-errors-during-cross-compile.patch \
14 "
15
16LIC_FILES_CHKSUM = "file://license.terms;md5=3da0e50feac5f64f08184584a8cad58a"
17
18inherit autotools-brokensep
19
20DEPENDS += "sqlite3 sqlite3-native icedtea7-native"
21RDEPENDS_${PN} += "sqlite3"
22FILES_${PN} +="/usr/share"
23
24PARALLEL_MAKE = "-j 1"
25
26SRC_URI[md5sum] = "242e384c1cd863d6996a35cf8c1c1e97"
27SRC_URI[sha256sum] = "b6b26e2c1a2174f5525d904eb3ff698c3f7089f0d4b4c84cf6121da08c8d801f"
28
29EXTRA_OECONF = " \
30 --with-sqlite3=${STAGING_DIR_NATIVE}/usr \
31 --with-sqlite3-target=${STAGING_DIR_TARGET}/usr \
32 --with-jdk=${STAGING_DIR_NATIVE}/usr/lib/jvm/icedtea7-native/ \
33 "
34
35EXTRA_OEMAKE = "DESTDIR=${D}"
36
37# This dev package contains an '.so' file used for JNI development
38INSANE_SKIP_${PN}-dev = "dev-elf"
39
40do_configure_append (){
41 cp ${S}/*-libtool ${S}/libtool
42}