commit: 902721305fa52d46884e660a80053b372d14743e
Author: Mathis Winterer <mrmagic223325 <AT> fedora <DOT> email>
AuthorDate: Thu Apr 27 17:15:13 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Apr 27 17:15:13 2023 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=90272130
dev-util/lua-language-server: new package, add 3.6.19
Signed-off-by: Mathis Winterer <mrmagic223325 <AT> fedora.email>
dev-util/lua-language-server/Manifest | 2 +-
.../lua-language-server/files/build.ninja.patch | 47 ++++++------
.../lua-language-server/files/linux.ninja.patch | 56 ++++++++-------
.../lua-language-server-3.6.19.ebuild | 83 ++++++++++++++++++++++
4 files changed, 143 insertions(+), 45 deletions(-)
diff --git a/dev-util/lua-language-server/Manifest
b/dev-util/lua-language-server/Manifest
index 5176e1a31..0ff38cf52 100644
--- a/dev-util/lua-language-server/Manifest
+++ b/dev-util/lua-language-server/Manifest
@@ -1 +1 @@
-DIST lua-language-server-3.6.18.zip 30708893 BLAKE2B
69bc01187fd85582766bf0d8f217bea163234d05698490b860d0ff446fcc0515f3b842600ff2ea980ff8c30acfb7b394df9a98b81a5b537df445cc18a70b744e
SHA512
b2bc488734df7eb0ad00993d352917d9d328b73603319fa8f1b0da8e93586cfdb85e715d6c3bd2ad6a9189551cc1e86a2fe35d3df4951f5feb80745c498424d2
+DIST lua-language-server-3.6.19.zip 31131706 BLAKE2B
6a01d97f42354440597709a7f2e66282fadffa309f6ab40714f46a545c03acf9c29b4e9f06ee68af6d7e48bd03b43cde46078182c7aa810ea2823a60be176628
SHA512
7fd6020140cbcd0ae4e9f1d894736499b8ce8c25c536e85d71033ea7205f7be07799eb08fe4fc884362067a3a88de683154ddf79bed03588f89c8185705e10f4
diff --git a/dev-util/lua-language-server/files/build.ninja.patch
b/dev-util/lua-language-server/files/build.ninja.patch
index 3e03c7d5d..3d3e8cc79 100644
--- a/dev-util/lua-language-server/files/build.ninja.patch
+++ b/dev-util/lua-language-server/files/build.ninja.patch
@@ -1,14 +1,13 @@
--- a/build/build.ninja
+++ b/build/build.ninja
-@@ -12,25 +12,25 @@
+@@ -12,23 +12,23 @@
3rd/bee.lua/compile/config.lua 3rd/bee.lua/compile/common.lua $
make/code_format.lua
rule c_source_bee
- command = $cc -MMD -MT $out -MF $out.d -std=c11 -O2 -Wall -Werror $
+- -fvisibility=hidden -I$builddir/lua54 -DNDEBUG -fPIC -o $out -c $in
+ command = $cc -MMD -MT $out -MF $out.d -std=c11 -Wall $
- -fvisibility=hidden -I3rd/bee.lua/3rd/lua-seri -I$builddir/lua54 $
-- -DNDEBUG -fPIC -o $out -c $in
-+ -DNDEBUG -fPIC -o $out -c $in CFLAGS
++ -fvisibility=hidden -I$builddir/lua54 -DNDEBUG -fPIC -o $out -c $in CFLAGS
description = Compile C $out
deps = gcc
depfile = $out.d
@@ -22,8 +21,7 @@
description = Compile C++ $out
deps = gcc
depfile = $out.d
- build $obj/source_bee/format.obj: cxx_source_bee $
- 3rd/bee.lua/bee/nonstd/3rd/format.cc
+ build $obj/source_bee/format.obj: cxx_source_bee 3rd/bee.lua/3rd/fmt/format.cc
rule cxx_source_bee_1
- command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
- -Werror -fvisibility=hidden -I3rd/bee.lua -DNDEBUG -fPIC -o $out -c $in
@@ -32,20 +30,20 @@
description = Compile C++ $out
deps = gcc
depfile = $out.d
-@@ -56,9 +56,9 @@
+@@ -54,9 +54,9 @@
build $obj/source_bee/path_helper.obj: cxx_source_bee_1 $
3rd/bee.lua/bee/utility/path_helper.cpp
rule cxx_source_bee_2
- command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
-- -Werror -fvisibility=hidden -I3rd/bee.lua/3rd/lua-seri -I3rd/bee.lua $
-- -I$builddir/lua54 -DBEE_STATIC -DNDEBUG -fPIC -o $out -c $in
+- -Werror -fvisibility=hidden -I3rd/bee.lua -I$builddir/lua54 $
+- -DBEE_STATIC -DNDEBUG -fPIC -o $out -c $in
+ command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -Wall $
-+ -fvisibility=hidden -I3rd/bee.lua/3rd/lua-seri -I3rd/bee.lua $
-+ -I$builddir/lua54 -DBEE_STATIC -DNDEBUG -fPIC -o $out -c $in CXXFLAGS
++ -fvisibility=hidden -I3rd/bee.lua -I$builddir/lua54 $
++ -DBEE_STATIC -DNDEBUG -fPIC -o $out -c $in CXXFLAGS
description = Compile C++ $out
deps = gcc
depfile = $out.d
-@@ -79,26 +79,26 @@
+@@ -77,26 +77,26 @@
build $obj/source_bee/lua_time.obj: cxx_source_bee_2 $
3rd/bee.lua/binding/lua_time.cpp
rule c_source_lua
@@ -61,7 +59,7 @@
rule c_source_lua_1
- command = $cc -MMD -MT $out -MF $out.d -std=c11 -O2 -Wall -Werror $
+ command = $cc -MMD -MT $out -MF $out.d -std=c11 -Wall $
- -DMAKE_LIB -DLUA_USE_LINUX -DNDEBUG -fPIC -Wno-maybe-uninitialized -o $
+ -DMAKE_LIB -DLUA_USE_LINUX -DNDEBUG -Wno-maybe-uninitialized -fPIC -o $
- $out -c $in
+ $out -c $in CFLAGS
description = Compile C $out
@@ -79,16 +77,16 @@
description = Compile C++ $out
deps = gcc
depfile = $out.d
-@@ -108,7 +108,7 @@
+@@ -106,7 +106,7 @@
3rd/bee.lua/bootstrap/progdir.cpp
rule link_bootstrap
- command = $cc $in -o $out -lm -ldl -Wl,-E -lstdc++fs -pthread $
-- -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -static-libgcc -s
-+ -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -static-libgcc LDFLAGS
+ command = $cc $in -o $out -Wl,-E -static-libgcc -lm -ldl -lstdc++fs $
+- -pthread -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -s
++ -pthread -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic LDFLAGS
description = Link Exe $out
build $bin/bootstrap: link_bootstrap $obj/source_bootstrap/main.obj $
$obj/source_bootstrap/progdir.obj $obj/source_bee/lua-seri.obj $
-@@ -147,10 +147,10 @@
+@@ -144,10 +144,10 @@
3rd/bee.lua/test/test_thread.lua 3rd/bee.lua/test/test_time.lua | $
$bin/bootstrap copy_script
rule cxx_code_format
@@ -101,7 +99,7 @@
description = Compile C++ $out
deps = gcc
depfile = $out.d
-@@ -247,9 +247,9 @@
+@@ -244,9 +244,9 @@
build $obj/code_format/Utf8.obj: cxx_code_format $
3rd/EmmyLuaCodeStyle/Util/src/Utf8.cpp
rule c_lpeglabel
@@ -113,7 +111,7 @@
description = Compile C $out
deps = gcc
depfile = $out.d
-@@ -259,9 +259,9 @@
+@@ -256,9 +256,9 @@
build $obj/lpeglabel/lpltree.obj: c_lpeglabel 3rd/lpeglabel/lpltree.c
build $obj/lpeglabel/lplvm.obj: c_lpeglabel 3rd/lpeglabel/lplvm.c
rule cxx_lua_language_server
@@ -125,3 +123,12 @@
description = Compile C++ $out
deps = gcc
depfile = $out.d
+@@ -266,7 +266,7 @@
+ make/modules.cpp
+ rule link_lua_language_server
+ command = $cc $in -o $out -lm -ldl -lstdc++fs -pthread -Wl,-Bstatic $
+- -lstdc++ -Wl,-Bdynamic -s
++ -lstdc++ -Wl,-Bdynamic LDFLAGS
+ description = Link Exe $out
+ build $bin/lua-language-server: link_lua_language_server $
+ $obj/lua-language-server/modules.obj $obj/lpeglabel/lplcap.obj $
diff --git a/dev-util/lua-language-server/files/linux.ninja.patch
b/dev-util/lua-language-server/files/linux.ninja.patch
index baf0d5350..fe2d89f61 100644
--- a/dev-util/lua-language-server/files/linux.ninja.patch
+++ b/dev-util/lua-language-server/files/linux.ninja.patch
@@ -1,6 +1,6 @@
--- a/3rd/luamake/compile/ninja/linux.ninja
+++ b/3rd/luamake/compile/ninja/linux.ninja
-@@ -2,29 +2,29 @@
+@@ -2,26 +2,26 @@
builddir = build/linux
bin = $builddir/bin
obj = $builddir/obj
@@ -9,10 +9,9 @@
luamake = luamake
rule c_source_bee
- command = $cc -MMD -MT $out -MF $out.d -O2 -Wall -Werror $
+- -fvisibility=hidden -Itools/lua54 -DNDEBUG -fPIC -o $out -c $in
+ command = $cc -MMD -MT $out -MF $out.d -Wall $
- -fvisibility=hidden -Ibee.lua/3rd/lua-seri -Itools/lua54 -DNDEBUG -fPIC $
-- -o $out -c $in
-+ -o $out -c $in CFLAGS
++ -fvisibility=hidden -Itools/lua54 -DNDEBUG -fPIC -o $out -c $in CFLAGS
description = Compile C $out
deps = gcc
depfile = $out.d
@@ -20,16 +19,13 @@
bee.lua/3rd/lua-seri/lua-seri.c
rule cxx_source_bee
- command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
-- -Werror -fvisibility=hidden -Ibee.lua/bee/nonstd/3rd -DNDEBUG -fPIC -o $
-- $out -c $in
+- -Werror -fvisibility=hidden -DNDEBUG -fPIC -o $out -c $in
+ command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -Wall $
-+ -fvisibility=hidden -Ibee.lua/bee/nonstd/3rd -DNDEBUG -fPIC -o $
-+ $out -c $in CXXFLAGS
++ -fvisibility=hidden -DNDEBUG -fPIC -o $out -c $in CXXFLAGS
description = Compile C++ $out
deps = gcc
depfile = $out.d
- build $obj/source_bee/format.obj: cxx_source_bee $
- bee.lua/bee/nonstd/3rd/fmt/format.cc
+ build $obj/source_bee/format.obj: cxx_source_bee bee.lua/3rd/fmt/format.cc
rule cxx_source_bee_1
- command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
- -Werror -fvisibility=hidden -Ibee.lua -DNDEBUG -fPIC -o $out -c $in
@@ -38,20 +34,20 @@
description = Compile C++ $out
deps = gcc
depfile = $out.d
-@@ -49,9 +49,9 @@
+@@ -46,9 +46,9 @@
build $obj/source_bee/path_helper.obj: cxx_source_bee_1 $
bee.lua/bee/utility/path_helper.cpp
rule cxx_source_bee_2
- command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
-- -Werror -fvisibility=hidden -Ibee.lua/3rd/lua-seri -Ibee.lua $
-- -Itools/lua54 -DBEE_STATIC -DNDEBUG -fPIC -o $out -c $in
+- -Werror -fvisibility=hidden -Ibee.lua -Itools/lua54 -DBEE_STATIC $
+- -DNDEBUG -fPIC -o $out -c $in
+ command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -Wall $
-+ -fvisibility=hidden -Ibee.lua/3rd/lua-seri -Ibee.lua $
-+ -Itools/lua54 -DBEE_STATIC -DNDEBUG -fPIC -o $out -c $in CXXFLAGS
++ -fvisibility=hidden -Ibee.lua -Itools/lua54 -DBEE_STATIC $
++ -DNDEBUG -fPIC -o $out -c $in CXXFLAGS
description = Compile C++ $out
deps = gcc
depfile = $out.d
-@@ -72,15 +72,15 @@
+@@ -69,24 +69,24 @@
build $obj/source_bee/lua_time.obj: cxx_source_bee_2 $
bee.lua/binding/lua_time.cpp
rule c_source_lua
@@ -65,18 +61,30 @@
build $obj/source_lua/utf8_crt.obj: c_source_lua bee.lua/3rd/lua/utf8_crt.c
rule c_source_lua_1
- command = $cc -MMD -MT $out -MF $out.d -O2 -Wall -Werror -DMAKE_LIB $
-- -DLUA_USE_LINUX -DNDEBUG -fPIC -Wno-maybe-uninitialized -o $out -c $in
+- -DLUA_USE_LINUX -DNDEBUG -Wno-maybe-uninitialized -fPIC -o $out -c $in
+ command = $cc -MMD -MT $out -MF $out.d -Wall -DMAKE_LIB $
-+ -DLUA_USE_LINUX -DNDEBUG -fPIC -Wno-maybe-uninitialized -o $out -c $in
CFLAGS
++ -DLUA_USE_LINUX -DNDEBUG -Wno-maybe-uninitialized -fPIC -o $out -c $in
CFLAGS
description = Compile C $out
deps = gcc
depfile = $out.d
-@@ -99,7 +99,7 @@
+ build $obj/source_lua/linit.obj: c_source_lua_1 bee.lua/3rd/lua/linit.c
+ build $obj/source_lua/onelua.obj: c_source_lua_1 bee.lua/3rd/lua/onelua.c
+ rule cxx_source_bootstrap
+- command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
+- -Werror -fvisibility=hidden -Ibee.lua/3rd/lua -Ibee.lua -DLUA_USE_LINUX $
+- -DNDEBUG -fPIC -o $out -c $in
++ command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -Wall $
++ -fvisibility=hidden -Ibee.lua/3rd/lua -Ibee.lua -DLUA_USE_LINUX $
++ -DNDEBUG -fPIC -o $out -c $in CXXFLAGS
+ description = Compile C++ $out
+ deps = gcc
+ depfile = $out.d
+@@ -96,7 +96,7 @@
bee.lua/bootstrap/progdir.cpp
- rule link_luamake
- command = $cc $in -o $out -lm -ldl -Wl,-E -lstdc++fs -pthread $
-- -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -static-libgcc -s
-+ -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -static-libgcc LDFLAGS
+ rule link_bootstrap
+ command = $cc $in -o $out -Wl,-E -static-libgcc -lm -ldl -lstdc++fs $
+- -pthread -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -s
++ -pthread -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic LDFLAGS
description = Link Exe $out
- build $bin/luamake: link_luamake $obj/source_bootstrap/main.obj $
+ build $bin/bootstrap: link_bootstrap $obj/source_bootstrap/main.obj $
$obj/source_bootstrap/progdir.obj $obj/source_bee/lua-seri.obj $
diff --git a/dev-util/lua-language-server/lua-language-server-3.6.19.ebuild
b/dev-util/lua-language-server/lua-language-server-3.6.19.ebuild
new file mode 100644
index 000000000..ac2bf19c0
--- /dev/null
+++ b/dev-util/lua-language-server/lua-language-server-3.6.19.ebuild
@@ -0,0 +1,83 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua{5-{1,3,4},jit} )
+
+inherit ninja-utils toolchain-funcs lua-single prefix
+
+DESCRIPTION="Lua language server"
+HOMEPAGE="https://github.com/LuaLS/lua-language-server"
+SRC_URI="https://github.com/LuaLS/lua-language-server/releases/download/${PV}/${P}-submodules.zip
-> ${P}.zip"
+S="${WORKDIR}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+REQUIRE_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="${LUA_DEPS}"
+RDEPEND="${DEPEND}"
+BDPEND="
+ app-arch/unzip
+ dev-util/ninja
+"
+RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/linux.ninja.patch" "${FILESDIR}/build.ninja.patch" )
+
+src_prepare() {
+ # Remove hardcoded gcc references
+ sed -i "/lm.cxx/a lm.cc = '$(tc-getCC)'" \
+ make.lua || die
+ sed -i "s/CC = gcc/ CC = ${tc-getCC}/" \
+ 3rd/lpeglabel/makefile || die
+ # Shipped file doesn't respect CFLAGS/CXXFLAGS/LDFLAGS
+ eapply "${FILESDIR}/linux.ninja.patch"
+ eapply_user
+ sed -i -e "s/^cc = REPLACE_ME/cc = $(tc-getCC)/" \
+ -e "s/CFLAGS/${CFLAGS}/" \
+ -e "s/CXXFLAGS/${CXXFLAGS}/" \
+ -e "s/LDFLAGS/${LDFLAGS}/" \
+ 3rd/luamake/compile/ninja/linux.ninja || die
+
+ prefixify_ro "${FILESDIR}/wrapper.sh"
+}
+
+src_compile() {
+ eninja -C 3rd/luamake -f compile/ninja/linux.ninja "$(usex test "test"
"luamake")"
+ use test && eninja -C 3rd/luamake -f compile/ninja/linux.ninja luamake
+ ./3rd/luamake/luamake init || die
+
+ # Generated file doesn't respect CFLAGS/CXXFLAGS/LDFLAGS
+ sed -i -e "s/^cc =.*./cc = REPLACE_ME/" \
+ -e "s/^luamake =.*./luamake = LUAMAKE_PATH/" \
+ build/build.ninja || die
+
+ eapply "${FILESDIR}/build.ninja.patch"
+ sed -i -e "s/REPLACE_ME/$(tc-getCC)/" \
+ -e "s|LUAMAKE_PATH|${S}/3rd/luamake/luamake|" \
+ -e "s/CFLAGS/${CFLAGS}/" \
+ -e "s/CXXFLAGS/${CXXFLAGS}/" \
+ -e "s/LDFLAGS/${LDFLAGS}/" \
+ -e "7d" \
+ build/build.ninja || die
+
+ use test && eninja -f build/build.ninja || eninja -f build/build.ninja
all
+}
+
+src_install() {
+ newbin "${T}/wrapper.sh" ${PN}
+
+ into /opt/${PN}
+ dobin bin/${PN}
+
+ insinto /opt/${PN}/bin
+ doins bin/main.lua
+
+ insinto /opt/${PN}
+ doins -r debugger.lua main.lua locale meta script
+
+ einstalldocs
+}