git: 93bc67ee6406 - main - devel/ccls: Reinstate the port and update to snapshot 20230115

From: Ka Ho Ng <khng_at_FreeBSD.org>
Date: Mon, 13 Feb 2023 04:52:07 UTC
The branch main has been updated by khng (src committer):

URL: https://cgit.FreeBSD.org/ports/commit/?id=93bc67ee64069717b4b0e56cfeba31fbabd40a5c

commit 93bc67ee64069717b4b0e56cfeba31fbabd40a5c
Author:     Ka Ho Ng <khng@FreeBSD.org>
AuthorDate: 2023-02-13 04:51:35 +0000
Commit:     Ka Ho Ng <khng@FreeBSD.org>
CommitDate: 2023-02-13 04:51:35 +0000

    devel/ccls: Reinstate the port and update to snapshot 20230115
    
    Approved by:    delphij (ports)
    Differential Revision:  https://reviews.freebsd.org/D38552
---
 MOVED                |  1 -
 devel/Makefile       |  1 +
 devel/ccls/Makefile  | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 devel/ccls/distinfo  |  5 +++++
 devel/ccls/pkg-descr | 16 +++++++++++++++
 5 files changed, 79 insertions(+), 1 deletion(-)

diff --git a/MOVED b/MOVED
index c9880e413bd0..d9a8cc1e856b 100644
--- a/MOVED
+++ b/MOVED
@@ -17745,7 +17745,6 @@ devel/llvm70||2023-01-15|Removed old llvm ports
 devel/llvm80||2023-01-15|Removed old llvm ports
 devel/llvm90||2023-01-15|Removed old llvm ports
 devel/android-tools-simpleperf||2023-01-15|Depends on removed old llvm ports
-devel/ccls||2023-01-15|Depends on removed old llvm ports
 devel/f18||2023-01-15|Depends on removed old llvm ports
 devel/xtoolchain-llvm80||2023-01-15|Depends on removed old llvm ports
 devel/xtoolchain-llvm90||2023-01-15|Depends on removed old llvm ports
diff --git a/devel/Makefile b/devel/Makefile
index e8c3880b4e18..5f21c99b0a8f 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -337,6 +337,7 @@
     SUBDIR += ccache-static
     SUBDIR += cccc
     SUBDIR += ccdoc
+    SUBDIR += ccls
     SUBDIR += ccrtp
     SUBDIR += cctz
     SUBDIR += cdash
diff --git a/devel/ccls/Makefile b/devel/ccls/Makefile
new file mode 100644
index 000000000000..2071e46efbca
--- /dev/null
+++ b/devel/ccls/Makefile
@@ -0,0 +1,57 @@
+PORTNAME=	ccls
+DISTVERSION=	0.20230115
+CATEGORIES=	devel
+
+MAINTAINER=	khng@FreeBSD.org
+COMMENT=	C/C++/ObjC language server
+WWW=		https://github.com/MaskRay/ccls
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	rapidjson>=1.1.0_4:devel/rapidjson
+
+USES=		cmake compiler:c++17-lang llvm:lib localbase
+USE_GITHUB=	yes
+GH_ACCOUNT=	MaskRay
+GH_TAGNAME=	8bc3959537ad
+
+CMAKE_ARGS=	-DCCLS_VERSION:STRING="${DISTVERSION}" \
+		-DClang_DIR:PATH="${LLVM_PREFIX}/lib/cmake/clang" \
+		-DLLVM_DIR:PATH="${LLVM_PREFIX}/lib/cmake/llvm"
+CXXFLAGS+=	-DNDEBUG
+
+PLIST_FILES=	bin/ccls
+PORTDOCS=	*
+
+OPTIONS_DEFINE=	DOCS
+
+DOCS_MASTER_SITES=	LOCAL/khng:docs
+DOCS_DISTFILES=		ccls.wiki-${DISTVERSION}.tar.gz:docs
+
+post-install-DOCS-on:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	cd ${WRKDIR}/ccls.wiki && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}
+
+.if defined(MAINTAINER_MODE)
+MAINTAINER_DISTFILE=	\
+	${_DISTDIR:S|/$||}/${DOCS_DISTFILES:Mccls.wiki-*.tar.gz\:*:C|\:.*$||}
+
+maintainer-docs-fetch:
+	@${MAKE} clean
+	@${MKDIR} ${WRKDIR}/ccls.wiki
+	@git clone https://github.com/MaskRay/ccls.wiki.git \
+		${WRKDIR}/ccls.wiki
+	@${TAR} -zcf ${MAINTAINER_DISTFILE} -C ${WRKDIR} \
+		--uid 0 --gid 0 --exclude-vcs ccls.wiki
+	@${MAKE} makesum
+	@${MAKE} clean
+
+${MAINTAINER_DISTFILE}: maintainer-docs-fetch
+
+maintainer-docs-distfiles: ${MAINTAINER_DISTFILE}
+	scp ${MAINTAINER_DISTFILE} \
+	    freefall.freebsd.org:public_distfiles/
+.endif
+
+.include <bsd.port.mk>
diff --git a/devel/ccls/distinfo b/devel/ccls/distinfo
new file mode 100644
index 000000000000..eb6f21e20473
--- /dev/null
+++ b/devel/ccls/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1676250001
+SHA256 (ccls.wiki-0.20230115.tar.gz) = 2cce618c9a59685704b9904b8813856b2b775c967ceff1bf791c61dfb2e23fb6
+SIZE (ccls.wiki-0.20230115.tar.gz) = 39089
+SHA256 (MaskRay-ccls-0.20230115-8bc3959537ad_GH0.tar.gz) = 720da9b1db4ec0352b84053ffc891a95956e739d5e9e42f4555b94f87320025f
+SIZE (MaskRay-ccls-0.20230115-8bc3959537ad_GH0.tar.gz) = 161773
diff --git a/devel/ccls/pkg-descr b/devel/ccls/pkg-descr
new file mode 100644
index 000000000000..740ceb51dadc
--- /dev/null
+++ b/devel/ccls/pkg-descr
@@ -0,0 +1,16 @@
+Ccls is a C/C++/Objective-C language server with the following
+features:
+
+- Code completion (with both signature help and snippets)
+- Definition/references, and other cross references
+- Cross reference extensions: $ccls/call $ccls/inheritance $ccls/member
+  $ccls/vars ...
+- Formatting
+- Hierarchies: call (caller/callee) hierarchy, inheritance
+  (base/derived) hierarchy, member hierarchy
+- Symbol rename
+- Document symbols and approximate search of workspace symbol
+- Hover information
+- Diagnostics and code actions (clang FixIts)
+- Semantic highlighting and preprocessor skipped regions
+- Semantic navigation: $ccls/navigate