File:  [cvs.NetBSD.org] / pkgsrc / devel / lua-language-server / Makefile
Revision 1.10: download - view: text, annotated - select for diffs
Tue Jul 18 14:11:17 2023 UTC (19 months, 4 weeks ago) by nia
Branches: MAIN
CVS tags: HEAD
devel: Adapt packages to use USE_(CC|CXX)_FEATURES

# $NetBSD: Makefile,v 1.10 2023/07/18 14:11:17 nia Exp $

DISTNAME=		lua-language-server-3.6.21
PKGNAME=		${DISTNAME:S/lua/${LUA_PKGPREFIX}/}
CATEGORIES=		devel lua
MASTER_SITES=		${MASTER_SITE_GITHUB:=luals/}
GITHUB_PROJECT=		lua-language-server
GITHUB_TAG=		${PKGVERSION_NOREV}

MAINTAINER=		nikita@NetBSD.org
HOMEPAGE=		https://github.com/luals/lua-language-server/
COMMENT=		Language server for Lua
LICENSE=		mit

MAKE_FLAGS+=		PREFIX=${PREFIX}
MAKE_FLAGS+=		CC=${CC:Q}
MAKE_FLAGS+=		CFLAGS=${CFLAGS:Q} -fPIC
MAKE_FLAGS+=		LUA_VERSION=${LUA_VERSION_MAJOR}.${LUA_VERSION_MINOR}

USE_TOOLS+=		pax mktemp
TOOL_DEPENDS+=		ninja-build-[0-9]*:../../devel/ninja-build
# 3rd/luamake, maybe needs path patching:
DEPENDS+=		clang-[0-9]*:../../lang/clang

USE_LANGUAGES+=		c c++17
USE_CXX_FEATURES+=	c++17

BUILDLINK_TRANSFORM+=	rm:-Werror

INSTALLATION_DIRS+=	share/lua-language-server/bin
INSTALLATION_DIRS+=	bin

# TODO: Maybe unbundle (some of) them? (lls does build with them included though)
GITHUB_SUBMODULES+=	CppCXY EmmyLuaCodeStyle 82aca211b6ee403a832412b9f7938db797c564d8 3rd/EmmyLuaCodeStyle
GITHUB_SUBMODULES+=	actboy168 bee.lua a131e39521e230ea2bbca20cb6b1c5abbc6a437b 3rd/bee.lua
GITHUB_SUBMODULES+=	actboy168 json.lua bd7b7787bb8b586e59b5afe5886dd1b76c86eb56 3rd/json.lua
GITHUB_SUBMODULES+=	love2d-community love-api ab6dc6756683686b5506107116f994253aef5a20 3rd/love-api
GITHUB_SUBMODULES+=	bjornbytes lovr-docs 441a21a6eb32e611be889cadf41df16938eda43d 3rd/lovr-api
GITHUB_SUBMODULES+=	sqmedeiros lpeglabel e25eb35666201b10dc2778d6147ea36a9f6e033d 3rd/lpeglabel
GITHUB_SUBMODULES+=	actboy168 luamake 22f861ac8444d1b85ceb29561b2a599fcbff4e3f 3rd/luamake
GITHUB_SUBMODULES+=	actboy168 bee.lua 8ff095021f73f5883d4b67ba6eb233eae44f3bb9 3rd/luamake/bee.lua

post-extract:
	${CP} ${FILESDIR}/lua-language-server ${WRKSRC}/lua-language-server

DATADIR=		${PREFIX}/share/lua-language-server

SUBST_CLASSES+=		wrapper
SUBST_STAGE.wrapper=	pre-build
SUBST_MESSAGE.wrapper=	Patching paths in lua-language-server wrapper script
SUBST_FILES.wrapper=	lua-language-server
SUBST_VARS.wrapper+=	MKTEMP
SUBST_VARS.wrapper+=	DATADIR

SUBST_CLASSES+=		path
SUBST_STAGE.path=	pre-configure
SUBST_MESSAGE.path=	Fixing path to installed headers.
SUBST_FILES.path=	3rd/luamake/compile/ninja/netbsd.ninja
SUBST_FILES.path+=	3rd/bee.lua/compile/common.lua
SUBST_SED.path=		-e 's,/usr/pkg,${PREFIX},'

SUBST_CLASSES+=		tests
SUBST_STAGE.tests=	pre-configure
SUBST_MESSAGE.tests=	Do not run randomly failing filewatch tests.
SUBST_FILES.tests+=	3rd/bee.lua/test/test.lua
SUBST_FILES.tests+=	3rd/luamake/bee.lua/test/test.lua
SUBST_SED.tests=	-e "s,require 'test_filewatch',,"

do-build:
	# probably needs much more fixes for systems noch supported by luamake.
	${PREFIX}/bin/ninja -C ${WRKSRC}/3rd/luamake -f compile/ninja/${OPSYS:tl}.ninja
	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./3rd/luamake/luamake -v

do-install:
	${INSTALL_SCRIPT} ${WRKSRC}/lua-language-server ${DESTDIR}${PREFIX}/bin
	${INSTALL_PROGRAM} ${WRKSRC}/bin/lua-language-server ${DESTDIR}${DATADIR}/bin/
	${INSTALL_SCRIPT} ${WRKSRC}/bin/main.lua ${DESTDIR}${DATADIR}/bin
	${INSTALL_DATA} ${WRKSRC}/debugger.lua ${DESTDIR}${DATADIR}
	${INSTALL_DATA} ${WRKSRC}/main.lua ${DESTDIR}${DATADIR}
	cd ${WRKSRC} && ${PAX} -rw locale ${DESTDIR}${DATADIR}
	cd ${WRKSRC} && ${PAX} -rw meta ${DESTDIR}${DATADIR}
	cd ${WRKSRC} && ${PAX} -rw script ${DESTDIR}${DATADIR}

.include "../../devel/libinotify/buildlink3.mk"
.include "../../lang/lua/module.mk"
.include "../../mk/bsd.pkg.mk"

CVSweb <webmaster@jp.NetBSD.org>