mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-18 17:50:06 +02:00
64 lines
1.8 KiB
Bash
64 lines
1.8 KiB
Bash
SUMMARY="C/C++/ObjC LSP language server"
|
|
DESCRIPTION="ccls, which originates from cquery, is a C/C++/Objective-C language server with \
|
|
features like:
|
|
|
|
* 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"
|
|
HOMEPAGE="https://github.com/MaskRay/ccls"
|
|
COPYRIGHT="2017-2023 ccls Authors"
|
|
LICENSE="Apache v2"
|
|
REVISION="1"
|
|
SOURCE_URI="https://github.com/MaskRay/ccls/archive/tags/$portVersion.tar.gz"
|
|
SOURCE_DIR="ccls-tags-$portVersion"
|
|
CHECKSUM_SHA256="0a5f62e5c0e3f7af9f15feeffad4c1dce5c7dc57cdacd228938fa6f46852f8db"
|
|
|
|
ARCHITECTURES="all !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="x86"
|
|
|
|
PROVIDES="
|
|
ccls$secondaryArchSuffix = $portVersion
|
|
cmd:ccls = $portVersion
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
lib:libclang_cpp$secondaryArchSuffix >= 17
|
|
lib:libLLVM_17$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
devel:libclang$secondaryArchSuffix >= 17
|
|
devel:libLLVM_17$secondaryArchSuffix
|
|
devel:libz$secondaryArchSuffix
|
|
devel:librapidjson$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:cmake
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:g++$secondaryArchSuffix
|
|
cmd:make
|
|
"
|
|
|
|
BUILD()
|
|
{
|
|
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release .
|
|
make -C build $jobArgs
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
mkdir -p $prefix/bin
|
|
cp -af build/ccls $prefix/bin
|
|
}
|