|
|
@ -19,13 +19,16 @@ end
|
|
|
|
local ffi_load = ffi.load
|
|
|
|
local ffi_load = ffi.load
|
|
|
|
-- patch ffi.load for thirdparty luajit libraries
|
|
|
|
-- patch ffi.load for thirdparty luajit libraries
|
|
|
|
ffi.load = function(lib)
|
|
|
|
ffi.load = function(lib)
|
|
|
|
|
|
|
|
io.write("ffi.load: ", lib, "\n")
|
|
|
|
local loaded, re = pcall(ffi_load, lib)
|
|
|
|
local loaded, re = pcall(ffi_load, lib)
|
|
|
|
if loaded then return re end
|
|
|
|
if loaded then return re end
|
|
|
|
|
|
|
|
|
|
|
|
local lib_path = package.searchpath(lib, "./lib?.so;./libs/lib?.so;./libs/lib?.so.1")
|
|
|
|
local lib_path = package.searchpath(lib, "./lib?.so;./libs/lib?.so;./libs/lib?.so.1")
|
|
|
|
|
|
|
|
|
|
|
|
if not lib_path then
|
|
|
|
if not lib_path then
|
|
|
|
error('Not able to load dynamic library: ' .. lib)
|
|
|
|
error('Not able to load dynamic library: ' .. lib)
|
|
|
|
else
|
|
|
|
else
|
|
|
|
|
|
|
|
io.write("ffi.load (assisted searchpath): ", lib_path, "\n")
|
|
|
|
return ffi_load(lib_path)
|
|
|
|
return ffi_load(lib_path)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|