diff --git a/Linux-x64/libsqlite3.so b/Linux-x64/libsqlite3.so index cb2e6ab..78ad21c 100644 Binary files a/Linux-x64/libsqlite3.so and b/Linux-x64/libsqlite3.so differ diff --git a/OSX-x64/libsqlite3.dylib b/OSX-x64/libsqlite3.dylib new file mode 100755 index 0000000..e562b36 Binary files /dev/null and b/OSX-x64/libsqlite3.dylib differ diff --git a/init.lua b/init.lua index ca5f5c6..9d07fd5 100644 --- a/init.lua +++ b/init.lua @@ -1,9 +1,21 @@ local ffi = require "ffi" local bit = require "bit" -local lib = require('ffi-loader')(module.dir, "sqlite3.h") +local sqlite3 = nil +-------------------------------------------------------------------------------- +local so_names = { + ['Linux-x64'] = 'libsqlite3.so', + ['OSX-x64'] = 'libsqlite3.dylib', +} + +ffi.cdef( module:load('sqlite3.h') ) +local arch = ffi.os .. '-' .. ffi.arch +module:action( arch .. '/' .. so_names[arch], function(path) + sqlite3 = ffi.load( path ) +end) + +--local sqlite3 = ffi.load("sqlite3") -local sqlite3 = ffi.load("sqlite3") local new_db_ptr = ffi.typeof("sqlite3*[1]") local new_stmt_ptr = ffi.typeof("sqlite3_stmt*[1]") --local new_exec_ptr = ffi.typeof("int (*)(void*,int,char**,char**)")