mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-10 03:23:29 +03:00
luaPackages.luv: 1.48.0-2 -> 1.50.0-1 (#393966)
This commit is contained in:
commit
d12267ab0a
6 changed files with 134 additions and 85 deletions
|
@ -106,7 +106,6 @@ luazip,,,,,,
|
||||||
lusc_luv,,,,,,
|
lusc_luv,,,,,,
|
||||||
lush.nvim,,,https://luarocks.org/dev,,,teto
|
lush.nvim,,,https://luarocks.org/dev,,,teto
|
||||||
luuid,,,,20120509-2,,
|
luuid,,,,20120509-2,,
|
||||||
luv,,,,1.48.0-2,,
|
|
||||||
lyaml,,,,,,lblasc
|
lyaml,,,,,,lblasc
|
||||||
lz.n,,,,,,mrcjkb
|
lz.n,,,,,,mrcjkb
|
||||||
lze,,,,,,birdee
|
lze,,,,,,birdee
|
||||||
|
|
|
|
@ -3491,37 +3491,6 @@ final: prev: {
|
||||||
}
|
}
|
||||||
) { };
|
) { };
|
||||||
|
|
||||||
luv = callPackage (
|
|
||||||
{
|
|
||||||
buildLuarocksPackage,
|
|
||||||
cmake,
|
|
||||||
fetchurl,
|
|
||||||
luaOlder,
|
|
||||||
}:
|
|
||||||
buildLuarocksPackage {
|
|
||||||
pname = "luv";
|
|
||||||
version = "1.48.0-2";
|
|
||||||
knownRockspec =
|
|
||||||
(fetchurl {
|
|
||||||
url = "mirror://luarocks/luv-1.48.0-2.rockspec";
|
|
||||||
sha256 = "0353bjn9z90a1hd7rksdfrd9fbdd31hbvdaxr1fb0fh0bc1cpy94";
|
|
||||||
}).outPath;
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://github.com/luvit/luv/releases/download/1.48.0-2/luv-1.48.0-2.tar.gz";
|
|
||||||
sha256 = "0yivq14dw0vjyl8ibrgdgrj9fbhjyy4yf3m4jc15bxmlxggisfic";
|
|
||||||
};
|
|
||||||
|
|
||||||
disabled = luaOlder "5.1";
|
|
||||||
nativeBuildInputs = [ cmake ];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "https://github.com/luvit/luv";
|
|
||||||
description = "Bare libuv bindings for lua";
|
|
||||||
license.fullName = "Apache 2.0";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
) { };
|
|
||||||
|
|
||||||
lyaml = callPackage (
|
lyaml = callPackage (
|
||||||
{
|
{
|
||||||
buildLuarocksPackage,
|
buildLuarocksPackage,
|
||||||
|
|
95
pkgs/development/lua-modules/luv/default.nix
Normal file
95
pkgs/development/lua-modules/luv/default.nix
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildLuarocksPackage,
|
||||||
|
cmake,
|
||||||
|
fetchFromGitHub,
|
||||||
|
libuv,
|
||||||
|
lua,
|
||||||
|
luaOlder,
|
||||||
|
nix-update-script,
|
||||||
|
runCommand,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildLuarocksPackage rec {
|
||||||
|
pname = "luv";
|
||||||
|
version = "1.50.0-1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "luvit";
|
||||||
|
repo = "luv";
|
||||||
|
rev = version;
|
||||||
|
# Need deps/lua-compat-5.3 only
|
||||||
|
fetchSubmodules = true;
|
||||||
|
hash = "sha256-PS3+qpELpX0tr7UqrlnE4NYScJb50j+9J4fbH9CTr/s=";
|
||||||
|
};
|
||||||
|
|
||||||
|
# to make sure we dont use bundled deps
|
||||||
|
prePatch = ''
|
||||||
|
rm -rf deps/lua deps/luajit deps/libuv
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildInputs = [ libuv ];
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
|
# Need to specify WITH_SHARED_LIBUV=ON cmake flag, but
|
||||||
|
# Luarocks doesn't take cmake variables from luarocks config.
|
||||||
|
# Need to specify it in rockspec. See https://github.com/luarocks/luarocks/issues/1160.
|
||||||
|
knownRockspec = runCommand "luv-${version}.rockspec" { } ''
|
||||||
|
patch ${src}/luv-scm-0.rockspec -o - > $out <<'EOF'
|
||||||
|
--- a/luv-scm-0.rockspec
|
||||||
|
+++ b/luv-scm-0.rockspec
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
package = "luv"
|
||||||
|
-version = "scm-0"
|
||||||
|
+version = "${version}"
|
||||||
|
source = {
|
||||||
|
url = 'git://github.com/luvit/luv.git'
|
||||||
|
}
|
||||||
|
@@ -24,6 +24,7 @@
|
||||||
|
build =
|
||||||
|
type = 'cmake',
|
||||||
|
variables = {
|
||||||
|
+ WITH_SHARED_LIBUV="ON",
|
||||||
|
CMAKE_C_FLAGS="$(CFLAGS)",
|
||||||
|
CMAKE_MODULE_LINKER_FLAGS="$(LIBFLAG)",
|
||||||
|
LUA_LIBDIR="$(LUA_LIBDIR)",
|
||||||
|
EOF
|
||||||
|
'';
|
||||||
|
|
||||||
|
doInstallCheck = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
rm tests/test-{dns,thread,tty}.lua
|
||||||
|
luarocks test
|
||||||
|
'';
|
||||||
|
|
||||||
|
disabled = luaOlder "5.1";
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
tests.test =
|
||||||
|
runCommand "luv-${version}-test"
|
||||||
|
{
|
||||||
|
nativeBuildInputs = [ (lua.withPackages (ps: [ ps.luv ])) ];
|
||||||
|
}
|
||||||
|
''
|
||||||
|
lua <<EOF
|
||||||
|
local uv = require("luv")
|
||||||
|
assert(uv.fs_mkdir(assert(uv.os_getenv("out")), 493))
|
||||||
|
print(uv.version_string())
|
||||||
|
EOF
|
||||||
|
'';
|
||||||
|
|
||||||
|
updateScript = nix-update-script { };
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/luvit/luv";
|
||||||
|
description = "Bare libuv bindings for lua";
|
||||||
|
longDescription = ''
|
||||||
|
This library makes libuv available to lua scripts. It was made for the luvit
|
||||||
|
project but should usable from nearly any lua project.
|
||||||
|
'';
|
||||||
|
license = lib.licenses.asl20;
|
||||||
|
maintainers = with lib.maintainers; [ stasjok ];
|
||||||
|
platforms = lua.meta.platforms;
|
||||||
|
};
|
||||||
|
}
|
36
pkgs/development/lua-modules/luv/lib.nix
Normal file
36
pkgs/development/lua-modules/luv/lib.nix
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
cmake,
|
||||||
|
fixDarwinDylibNames,
|
||||||
|
isLuaJIT,
|
||||||
|
libuv,
|
||||||
|
lua,
|
||||||
|
stdenv,
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "libluv";
|
||||||
|
inherit (lua.pkgs.luv) version src meta;
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DBUILD_SHARED_LIBS=ON"
|
||||||
|
"-DBUILD_MODULE=OFF"
|
||||||
|
"-DWITH_SHARED_LIBUV=ON"
|
||||||
|
"-DLUA_BUILD_TYPE=System"
|
||||||
|
"-DWITH_LUA_ENGINE=${if isLuaJIT then "LuaJit" else "Lua"}"
|
||||||
|
];
|
||||||
|
|
||||||
|
# to make sure we dont use bundled deps
|
||||||
|
prePatch = ''
|
||||||
|
rm -rf deps/lua deps/luajit deps/libuv
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
libuv
|
||||||
|
lua
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
cmake
|
||||||
|
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ];
|
||||||
|
}
|
|
@ -15,7 +15,6 @@
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
fetchpatch,
|
fetchpatch,
|
||||||
fetchurl,
|
fetchurl,
|
||||||
fixDarwinDylibNames,
|
|
||||||
fzf,
|
fzf,
|
||||||
glib,
|
glib,
|
||||||
glibc,
|
glibc,
|
||||||
|
@ -33,7 +32,6 @@
|
||||||
libpsl,
|
libpsl,
|
||||||
libpq,
|
libpq,
|
||||||
libuuid,
|
libuuid,
|
||||||
libuv,
|
|
||||||
libxcrypt,
|
libxcrypt,
|
||||||
libyaml,
|
libyaml,
|
||||||
lua-language-server,
|
lua-language-server,
|
||||||
|
@ -846,57 +844,6 @@ in
|
||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
||||||
# as advised in https://github.com/luarocks/luarocks/issues/1402#issuecomment-1080616570
|
|
||||||
# we shouldn't use luarocks machinery to build complex cmake components
|
|
||||||
libluv = stdenv.mkDerivation {
|
|
||||||
|
|
||||||
pname = "libluv";
|
|
||||||
inherit (prev.luv) version meta src;
|
|
||||||
|
|
||||||
cmakeFlags = [
|
|
||||||
"-DBUILD_SHARED_LIBS=ON"
|
|
||||||
"-DBUILD_MODULE=OFF"
|
|
||||||
"-DWITH_SHARED_LIBUV=ON"
|
|
||||||
"-DLUA_BUILD_TYPE=System"
|
|
||||||
"-DWITH_LUA_ENGINE=${if isLuaJIT then "LuaJit" else "Lua"}"
|
|
||||||
];
|
|
||||||
|
|
||||||
# to make sure we dont use bundled deps
|
|
||||||
postUnpack = ''
|
|
||||||
rm -rf deps/lua deps/libuv
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
libuv
|
|
||||||
final.lua
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
pkg-config
|
|
||||||
cmake
|
|
||||||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ fixDarwinDylibNames ];
|
|
||||||
};
|
|
||||||
|
|
||||||
luv = prev.luv.overrideAttrs (oa: {
|
|
||||||
|
|
||||||
nativeBuildInputs = oa.nativeBuildInputs ++ [ pkg-config ];
|
|
||||||
buildInputs = [ libuv ];
|
|
||||||
|
|
||||||
# Use system libuv instead of building local and statically linking
|
|
||||||
luarocksConfig = lib.recursiveUpdate oa.luarocksConfig {
|
|
||||||
variables = {
|
|
||||||
WITH_SHARED_LIBUV = "ON";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# we unset the LUA_PATH since the hook erases the interpreter defaults (To fix)
|
|
||||||
# tests is not run since they are not part of the tarball anymore
|
|
||||||
preCheck = ''
|
|
||||||
unset LUA_PATH
|
|
||||||
rm tests/test-{dns,thread}.lua
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
|
|
||||||
lyaml = prev.lyaml.overrideAttrs (oa: {
|
lyaml = prev.lyaml.overrideAttrs (oa: {
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
libyaml
|
libyaml
|
||||||
|
|
|
@ -205,6 +205,9 @@ rec {
|
||||||
}
|
}
|
||||||
) { };
|
) { };
|
||||||
|
|
||||||
|
luv = callPackage ../development/lua-modules/luv { };
|
||||||
|
libluv = callPackage ../development/lua-modules/luv/lib.nix { };
|
||||||
|
|
||||||
luxio = callPackage (
|
luxio = callPackage (
|
||||||
{
|
{
|
||||||
fetchurl,
|
fetchurl,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue