UNPKG

couchbase

Version:

The official Couchbase Node.js Client Library.

71 lines (64 loc) 2.14 kB
# Contributor: Couchbase SDK Team <support@couchbase.com> # Maintainer: Couchbase SDK Team <support@couchbase.com> pkgname=couchbase-cxx-client pkgver=@COUCHBASE_CXX_CLIENT_PACKAGE_VERSION@ pkgrel=1 _number_of_commits=@COUCHBASE_CXX_CLIENT_NUMBER_OF_COMMITS@ _git_revision_short=@COUCHBASE_CXX_CLIENT_GIT_REVISION_SHORT@ if [ "${_number_of_commits}" -gt 0 ]; then # Encode commit count and git hash into _p version for uniqueness # Extract first 3 hex bytes from git hash, convert to decimal # Map each byte mod 100 to create 6-digit suffix # Formula: p = commits × 10_000_000 + (byte1%100)*10000 + (byte2%100)*100 + (byte3%100) # Example: 1.2.0-75-gfeb729b2 → 1.2.0_p750548341 _b1=$((0x${_git_revision_short:0:2})) _b2=$((0x${_git_revision_short:2:2})) _b3=$((0x${_git_revision_short:4:2})) _sha_pack=$(( (_b1 % 100) * 10000 + (_b2 % 100) * 100 + (_b3 % 100) )) _p_version=$(( _number_of_commits * 10000000 + _sha_pack )) pkgver="${pkgver}_p${_p_version}" fi source="${pkgname}-${pkgver}.tar.gz" pkgdesc="Couchbase C++ SDK" url="https://docs.couchbase.com/cxx-sdk/current/hello-world/overview.html" arch="all" license="Apache-2.0" depends="" makedepends=" linux-headers cmake ninja curl-dev protobuf-dev grpc-dev nlohmann-json " subpackages="${pkgname}-dev ${pkgname}-tools" options="!check" unpack() { (cd "${srcdir}"; tar -xzf "${source}" --strip-components=1) } build() { cmake -B apk-build -S "${srcdir}" -G Ninja \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=MinSizeRel \ -DBUILD_SHARED_LIBS=OFF \ -DCOUCHBASE_CXX_CLIENT_PKGCONFIG_VERSION="${pkgver}" \ -DCOUCHBASE_CXX_CLIENT_INSTALL=ON \ -DCOUCHBASE_CXX_CLIENT_STATIC_BORINGSSL=ON \ -DCOUCHBASE_CXX_CLIENT_BUILD_EXAMPLES=OFF \ -DCOUCHBASE_CXX_CLIENT_BUILD_TESTS=OFF \ -DCOUCHBASE_CXX_CLIENT_BUILD_OPENTELEMETRY=ON \ -DCOUCHBASE_CXX_CLIENT_BUILD_TOOLS=ON \ -DCOUCHBASE_CXX_CLIENT_BUILD_STATIC=ON \ -DCOUCHBASE_CXX_CLIENT_BUILD_SHARED=ON cmake --build apk-build } tools() { pkgdesc="${pkgdesc} (tools)" depends="${pkgname}=${pkgver}-r${pkgrel}" amove usr/bin } package() { DESTDIR="${pkgdir}" cmake --install apk-build }