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
+}

Reply via email to