48 lines
1.3 KiB
Nix
48 lines
1.3 KiB
Nix
{lib, fetchurl, lua, sqlite, luaPackages,
|
|
libpsql ? null, libmysql ? null,
|
|
withpsql ? false, withmysql ? false}:
|
|
|
|
assert withpsql -> libpsql != null;
|
|
assert withmysql -> libmysql != null;
|
|
|
|
luaPackages.buildLuaPackage rec {
|
|
version = "0.5";
|
|
name = "luadbi-${version}";
|
|
isLibrary = true;
|
|
src = fetchurl {
|
|
url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luadbi/luadbi.${version}.tar.gz";
|
|
sha256 = "07ikxgxgfpimnwf7zrqwcwma83ss3wm2nzjxpwv2a1c0vmc684a9";
|
|
};
|
|
|
|
propagatedBuildInputs = [ sqlite ]
|
|
++ (lib.optional withpsql [libpsql])
|
|
++ (lib.optional withmysql [libmysql]);
|
|
|
|
unpackPhase = ''
|
|
mkdir ./luadbi
|
|
tar -xf $src -C ./luadbi
|
|
sourceRoot=./luadbi
|
|
chmod -R u+w "$sourceRoot";
|
|
'';
|
|
|
|
preBuild = with lib.optionalString; ''
|
|
makeFlagsArray=(
|
|
sqlite3
|
|
${lib.optionalString withpsql "psql"}
|
|
${lib.optionalString withmysql "mysql"}
|
|
LUA_LDIR="$out/share/lua/${lua.luaversion}"
|
|
LUA_INC="-I${lua}/include" LUA_CDIR="$out/lib/lua/${lua.luaversion}"
|
|
)
|
|
'';
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/lib/lua/${lua.luaversion}
|
|
install -p ./*.so DBI.lua $out/lib/lua/${lua.luaversion}
|
|
'';
|
|
|
|
meta = {
|
|
homepage = "https://code.google.com/archive/p/luadbi/downloads";
|
|
maintainers = [ "Yorick" ];
|
|
};
|
|
}
|