summaryrefslogtreecommitdiff
path: root/devel/lua-language-server/Makefile
blob: 032c47e016af5e7c548667fd264ea38a2176d818 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
PORTNAME=	lua-language-server
DISTVERSION=	3.16.1
PORTEPOCH=	1
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=		dos2unix lua:build ninja:make
DOS2UNIX_REGEX=	.*\.(cpp|h|lua|md|obj)
USE_GITHUB=	yes
GH_ACCOUNT=	LuaLS

# autogenerated with:
# submodules2tuple -v -b $DISTVERSION https://github.com/LuaLS/lua-language-server
# But then you must distinguish the 2 `bee.lua` manually.
GH_TUPLE=	CppCXY:EmmyLuaCodeStyle:8500f3af:emmyluacodestyle/3rd/EmmyLuaCodeStyle \
		actboy168:bee.lua:ee7efd07:beelua/3rd/bee.lua \
		actboy168:json.lua:f94860ef:jsonlua/3rd/json.lua \
		actboy168:ltest:0d2d81f:ltest/3rd/json.lua/test/ltest \
		love2d-community:love-api:85363928:loveapi/3rd/love-api \
		bjornbytes:lovr-docs:e89c753e:lovrdocs/3rd/lovr-api \
		sqmedeiros:lpeglabel:912b0b9e:lpeglabel/3rd/lpeglabel \
		actboy168:luamake:a83fa224:luamake/3rd/luamake \
		actboy168:bee.lua:973fd8a:beelua_luamake/3rd/luamake/bee.lua \
		LuaCATS:cocos4.0:c0b2259e:cocos40/meta/3rd/Cocos4.0 \
		LuaCATS:defold:05379b40:defold/meta/3rd/Defold \
		LuaCATS:jass:80d85cbb:jass/meta/3rd/Jass \
		LuaCATS:openresty:3bec36f0:openresty/meta/3rd/OpenResty \
		LuaCATS:bee:c8ce19fd:bee/meta/3rd/bee \
		LuaCATS:busted:5ed85d0e:busted/meta/3rd/busted \
		LuaCATS:ffi-reflect:e9037efc:ffireflect/meta/3rd/ffi-reflect \
		LuaCATS:luafilesystem:9b5cfc15:luafilesystem/meta/3rd/lfs \
		LuaCATS:love2d:98f76845:love2d/meta/3rd/love2d \
		LuaCATS:lovr:3ba215f9:lovr/meta/3rd/lovr \
		LuaCATS:luaecs:21192fbd:luaecs/meta/3rd/luaecs \
		LuaCATS:luassert:d3528bb6:luassert/meta/3rd/luassert \
		LuaCATS:luv:3615eb12:luv/meta/3rd/luv \
		LuaCATS:skynet:afa6717a:skynet/meta/3rd/skynet

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
	${REINPLACE_CMD} -e 's|%NINJA_CMD%|${NINJA_CMD}|' ${WRKSRC}/3rd/luamake/compile/build.sh
	${REINPLACE_CMD} -e 's|%NINJA_CMD%|${NINJA_CMD}|' ${WRKSRC}/3rd/luamake/scripts/globals.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.options.mk>

.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1500050
LIB_DEPENDS+=	libinotify.so:devel/libinotify
_INOTIFY_=	links = "inotify",
_LINK_INOTIFY_=	-linotify
.endif

.include <bsd.port.mk>