Skip to content

brodycj/Android-sqlite-native-driver-regexp-pcre

Repository files navigation

Android sqlite native driver with REGEXP supported by PCRE

Provides a native build of sqlite with a low-level interface for Android libraries.

Based on SQLiteGlue-core, which may be adapted for other Java platforms.

by Christopher J. Brody aka Chris Brody mailto: brodybits@litehelpers.net

License: UNLICENSE (public domain).

Includes the following third-party components:

  • sqlite3 (public domain)
  • sqlite3-pcre (public domain) from git.altlinux.org/people/at/packages/?p=sqlite3-pcre.git - thanks to https://github.com/ralight/sqlite3-pcre for the link
  • PCRE 8.37 (BSD 3-clause)

About

Android-sqlite-native-driver provides:

  • single SQLiteNative class with native Java interface to an important subset of sqlite C functions
  • automatic build of sqlite-native-driver-libs.zip, with native sqlite library build for major Android targets (armeabi, armeabi-v7a, x86, x86_64) that is accessible from the native Java interface

This is accomplished by using GlueGen around a simple wrapper C module.

This project is meant to help build a higher-level sqlite interface library, with the JNI layer completely isolated.

NOTE: This project references the gluegentools and sqlite-amalgamation subprojects, which are resolved by: $ make init (as described below).

WARNING: The sqlite database and statement handles that are returned by the SQLiteNative library functions are raw C pointer values (with 0x100000000 added). If someone uses a sqlite database or statement handle that is not valid, or no longer valid with the SQLiteNative library the behavior is undefined (such as a crash). It is NOT recommended to use this API directly unless you really understand how this library works internally.

TBD API and some internal details (probably in a blog post)

Major TODOs and limitations

Building

Normal build

Initialize with the gluegentools and sqlite-amalgamation subprojects:

$ make init

Then to build:

$ make

Regenerage Java & C glue code

$ make regen

Testing

Tested with Android-sqlite-connector.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages