Page MenuHomeFreeBSD

D54055.id167524.diff
No OneTemporary

D54055.id167524.diff

diff --git a/MOVED b/MOVED
--- a/MOVED
+++ b/MOVED
@@ -2314,7 +2314,6 @@
devel/py-jaraco||2023-08-21|Remove obsoleted port
security/rubygem-openssl2|security/rubygem-openssl|2023-08-21|Remove obsoleted port. Use security/rubygem-openssl instead
games/cataclysm-dda-tiles|games/cataclysm-dda@tiles|2023-08-22|Moved to a flavored version
-devel/lua-language-server||2023-08-22|Has expired: Versions after 3.6.9 dump core (and do not compile)
security/py-netbox-secretstore|security/py-netbox-secrets|2023-08-22|Has expired: No longer maintained by upstream, not compatible with NetBox 3.5, please migrate to security/py-netbox-secrets
benchmarks/dbs||2023-08-22|Has expired: Broken on all supported releases for more than an year
databases/virtuoso||2023-08-22|Has expired: Broken on all supported FreeBSD releases for more than an year
diff --git a/devel/lua-language-server/Makefile b/devel/lua-language-server/Makefile
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/Makefile
@@ -0,0 +1,74 @@
+PORTNAME= lua-language-server
+PORTVERSION= 3.16.0
+CATEGORIES= devel
+
+MAINTAINER= dave@freedave.net
+COMMENT= Lua development server and LSP client
+WWW= https://luals.github.io
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= tar dos2unix lua:build ninja:make
+DOS2UNIX_REGEX= .*\.(cpp|h|lua|md|obj)
+USE_GITHUB= yes
+GH_ACCOUNT= LuaLS
+
+# Put these in order of # https://github.com/LuaLS/lua-language-server/tree/5f1226d/3rd
+# But there is one more `bee.lua` for `luamake` and it doesn't necessarily have the same
+# SHA. Have to follow the 3rd/luamake and see what it wants.
+GH_TUPLE= cppcxy:EmmyLuaCodeStyle:8500f3a:emmyluacodestyle/3rd/EmmyLuaCodeStyle \
+ actboy168:bee.lua:dd7853f:bee/3rd/bee.lua \
+ actboy168:json.lua:aff2a3d:json/3rd/json.lua \
+ love2d-community:love-api:8536392:love/3rd/love-api \
+ bjornbytes:lovr-docs:e89c753:lovr/3rd/lovr-api \
+ sqmedeiros:lpeglabel:912b0b9:lpeglabel/3rd/lpeglabel \
+ actboy168:luamake:0e90778:luamake/3rd/luamake \
+ actboy168:bee.lua:f242926:bee_luamake/3rd/luamake/bee.lua
+
+SUB_FILES= lua-language-server
+
+PLIST_FILES= bin/lua-language-server \
+ ${DATADIR_REL}/bin/lua-language-server \
+ ${DATADIR_REL}/bin/main.lua \
+ ${DATADIR_REL}/debugger.lua \
+ ${DATADIR_REL}/main.lua
+
+PORTDATA= locale meta script
+
+post-patch:
+ ${REINPLACE_CMD} -e 's|%LOCALBASE%|${LOCALBASE}|' ${WRKSRC}/3rd/bee.lua/compile/common.lua
+ ${REINPLACE_CMD} -e 's|%INOTIFY%|${INOTIFY}|' ${WRKSRC}/3rd/bee.lua/compile/common.lua
+ ${REINPLACE_CMD} -e 's|%LOCALBASE%|${LOCALBASE}|' ${WRKSRC}/3rd/luamake/compile/ninja/freebsd.ninja
+ ${REINPLACE_CMD} -e 's|%LINK_INOTIFY%|${LINK_INOTIFY}|' ${WRKSRC}/3rd/luamake/compile/ninja/freebsd.ninja
+ ${REINPLACE_CMD} -e 's|%WRKDIR%|${WRKDIR}|' ${WRKSRC}/3rd/luamake/bee.lua/test/test.lua
+ ${REINPLACE_CMD} -e 's|%WRKDIR%|${WRKDIR}|' ${WRKSRC}/3rd/bee.lua/test/test.lua
+
+# `luamake all` instead of `luamake rebuild` because there is a flaky test
+do-build:
+ cd ${WRKSRC}/3rd/luamake && compile/build.sh
+ cd ${WRKSRC} && 3rd/luamake/luamake all
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${DATADIR}/bin
+ ${INSTALL_SCRIPT} ${WRKDIR}/lua-language-server ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/bin/lua-language-server ${STAGEDIR}${DATADIR}/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/bin/main.lua ${STAGEDIR}${DATADIR}/bin
+ ${INSTALL_DATA} ${WRKSRC}/debugger.lua ${STAGEDIR}${DATADIR}
+ ${INSTALL_DATA} ${WRKSRC}/main.lua ${STAGEDIR}${DATADIR}
+ cd ${WRKSRC} && ${COPYTREE_SHARE} "locale meta script" ${STAGEDIR}${DATADIR}
+
+# you may hit https://github.com/LuaLS/lua-language-server/issues/2896
+do-test:
+ cd ${WRKSRC} && 3rd/luamake/luamake unit-test
+
+.include <bsd.port.pre.mk>
+
+# conditionally bring in libinotify for stable/14 and below
+.if ${OSVERSION} < 1500050
+LIB_DEPENDS+= libinotify.so:devel/libinotify
+INOTIFY= links = "inotify",
+LINK_INOTIFY= -linotify
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/devel/lua-language-server/distinfo b/devel/lua-language-server/distinfo
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/distinfo
@@ -0,0 +1,19 @@
+TIMESTAMP = 1764686480
+SHA256 (LuaLS-lua-language-server-3.16.0_GH0.tar.gz) = faf8c0be1f03b3800dc65663c90618b913ed750f5c25e2c4f8ff06557eba36f6
+SIZE (LuaLS-lua-language-server-3.16.0_GH0.tar.gz) = 3088066
+SHA256 (cppcxy-EmmyLuaCodeStyle-8500f3a_GH0.tar.gz) = 5f45f8d2f3e1a6f1807d5c38f81d38d5b50b382a8d7c3376ab7afd7000f1dcaf
+SIZE (cppcxy-EmmyLuaCodeStyle-8500f3a_GH0.tar.gz) = 5421453
+SHA256 (actboy168-bee.lua-dd7853f_GH0.tar.gz) = 731219f3a5ad2787d88ef451e59230f4eb4327f4a688c8f11034190bb0a18ba7
+SIZE (actboy168-bee.lua-dd7853f_GH0.tar.gz) = 803217
+SHA256 (actboy168-json.lua-aff2a3d_GH0.tar.gz) = 41858762e3cb7bddcdc8cbff6c59977b629e956d889425bdadc3acd7de769b03
+SIZE (actboy168-json.lua-aff2a3d_GH0.tar.gz) = 27700
+SHA256 (love2d-community-love-api-8536392_GH0.tar.gz) = 0bda3c23baa680a6b60150f65df639c9f9b5e4ef2527ff972ec7de1de56be364
+SIZE (love2d-community-love-api-8536392_GH0.tar.gz) = 152808
+SHA256 (bjornbytes-lovr-docs-e89c753_GH0.tar.gz) = 42465ee079a768f31ba5574613c3a53210fdc65989f37e4d49359eb52a1d383d
+SIZE (bjornbytes-lovr-docs-e89c753_GH0.tar.gz) = 18279747
+SHA256 (sqmedeiros-lpeglabel-912b0b9_GH0.tar.gz) = 8d16beb9a36bfb3d493f8e20055ad20bb7624df62d06b5994942a9e68a4e4f57
+SIZE (sqmedeiros-lpeglabel-912b0b9_GH0.tar.gz) = 83070
+SHA256 (actboy168-luamake-0e90778_GH0.tar.gz) = 8ade6e8918bfc24473d6f72296158e66345964b93d4d8b11f482da1c9302cafc
+SIZE (actboy168-luamake-0e90778_GH0.tar.gz) = 78631
+SHA256 (actboy168-bee.lua-f242926_GH0.tar.gz) = 740e6a6ebb8ae0d64c71feee54b56390c12be1e0e330c94c369b382048701553
+SIZE (actboy168-bee.lua-f242926_GH0.tar.gz) = 801985
diff --git a/devel/lua-language-server/files/lua-language-server.in b/devel/lua-language-server/files/lua-language-server.in
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/files/lua-language-server.in
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+TMPPATH=$(/usr/bin/mktemp -d '/tmp/lua-language-server.XXXXXX' || exit 1)
+
+exec '%%DATADIR%%/bin/lua-language-server' \
+ --logpath="${TMPPATH}/log" \
+ --metapath="${TMPPATH}/meta" \
+ "$@"
diff --git a/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua b/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua
@@ -0,0 +1,22 @@
+--- 3rd/bee.lua/compile/common.lua.orig 2025-12-03 14:18:20 UTC
++++ 3rd/bee.lua/compile/common.lua
+@@ -207,7 +207,7 @@ lm:source_set "source_bee" {
+ }
+ },
+ freebsd = {
+- sysincludes = "/usr/local/include",
++ sysincludes = "%LOCALBASE%/include",
+ sources = need {
+ "bsd",
+ "posix",
+@@ -291,8 +291,8 @@ lm:source_set "source_bee" {
+ ldflags = "-pthread"
+ },
+ freebsd = {
+- links = "inotify",
+- linkdirs = "/usr/local/lib",
++ %INOTIFY%
++ linkdirs = "%LOCALBASE%/lib",
+ ldflags = "-pthread"
+ },
+ openbsd = {
diff --git a/devel/lua-language-server/files/patch-3rd_bee.lua_test_test.lua b/devel/lua-language-server/files/patch-3rd_bee.lua_test_test.lua
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/files/patch-3rd_bee.lua_test_test.lua
@@ -0,0 +1,11 @@
+--- 3rd/bee.lua/test/test.lua.orig 2025-12-02 15:52:43 UTC
++++ 3rd/bee.lua/test/test.lua
+@@ -53,7 +53,7 @@ do
+ if lt.options.touch then
+ lt.options.touch = fs.absolute(lt.options.touch):string()
+ end
+- local tmpdir = fs.temp_directory_path() / "test_bee"
++ local tmpdir = "%WRKDIR%" .. "/tmp/test_bee"
+ fs.create_directories(tmpdir)
+ fs.current_path(tmpdir)
+ end
diff --git a/devel/lua-language-server/files/patch-3rd_luamake_bee.lua_test_test.lua b/devel/lua-language-server/files/patch-3rd_luamake_bee.lua_test_test.lua
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/files/patch-3rd_luamake_bee.lua_test_test.lua
@@ -0,0 +1,11 @@
+--- 3rd/luamake/bee.lua/test/test.lua.orig 2025-12-02 15:38:21 UTC
++++ 3rd/luamake/bee.lua/test/test.lua
+@@ -53,7 +53,7 @@ do
+ if lt.options.touch then
+ lt.options.touch = fs.absolute(lt.options.touch):string()
+ end
+- local tmpdir = fs.temp_directory_path() / "test_bee"
++ local tmpdir = "%WRKDIR%" .. "/tmp/test_bee"
+ fs.create_directories(tmpdir)
+ fs.current_path(tmpdir)
+ end
diff --git a/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja b/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja
@@ -0,0 +1,29 @@
+--- 3rd/luamake/compile/ninja/freebsd.ninja.orig 2025-10-29 08:38:58 UTC
++++ 3rd/luamake/compile/ninja/freebsd.ninja
+@@ -30,7 +30,7 @@ rule cxx_source_bee_2
+ rule cxx_source_bee_2
+ command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
+ -fvisibility=hidden -Ibee.lua -Ibee.lua/3rd/lua54 -isystem $
+- /usr/local/include -DNDEBUG -o $out -c $in
++ %LOCALBASE%/include -DNDEBUG -o $out -c $in
+ description = Compile C++ $out
+ deps = gcc
+ depfile = $out.d
+@@ -126,7 +126,7 @@ rule link_bootstrap
+ build $obj/source_bootstrap/main.obj: cxx_source_bootstrap $
+ bee.lua/bootstrap/main.cpp
+ rule link_bootstrap
+- command = $cc $in -o $out -Wl,-E -linotify -L/usr/local/lib -pthread -lm $
++ command = $cc $in -o $out -Wl,-E %LINK_INOTIFY% -L%LOCALBASE%/lib -pthread -lm $
+ -Wl,--push-state,-Bstatic -lstdc++ -Wl,--pop-state -Wl,-S,-x
+ description = Link Exe $out
+ rule copy
+@@ -138,7 +138,7 @@ rule link_luamake
+ description = Run test.
+ pool = console
+ rule link_luamake
+- command = $cc $in -o $out -linotify -L/usr/local/lib -pthread -lm $
++ command = $cc $in -o $out %LINK_INOTIFY% -L%LOCALBASE%/lib -pthread -lm $
+ -lstdc++ -Wl,-S,-x
+ description = Link Exe $out
+ rule build_luamake_test
diff --git a/devel/lua-language-server/pkg-descr b/devel/lua-language-server/pkg-descr
new file mode 100644
--- /dev/null
+++ b/devel/lua-language-server/pkg-descr
@@ -0,0 +1,16 @@
+The Sumneko Lua Language Server is a comprehensive Lua development
+server. It functions as an LSP client, supporting:
+
+* Over 20 supported annotations for documenting your code
+* Go to definition
+* Dynamic type checking
+* Find references
+* Diagnostics/Warnings
+* Syntax checking
+* Element renaming
+* Hover to view details on variables, functions, and more
+* Autocompletion
+* Support for libraries
+* Code formatting
+* Spell checking
+* Custom plugins

File Metadata

Mime Type
text/plain
Expires
Thu, Apr 2, 4:59 AM (11 h, 32 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30705572
Default Alt Text
D54055.id167524.diff (10 KB)

Event Timeline