UNPKG

couchbase

Version:

The official Couchbase Node.js Client Library.

79 lines (60 loc) 2.86 kB
# Couchbase C++ Client [![license](https://img.shields.io/github/license/couchbase/couchbase-cxx-client?color=brightgreen)](https://opensource.org/licenses/Apache-2.0) [![linters](https://img.shields.io/github/actions/workflow/status/couchbase/couchbase-cxx-client/linters.yml?branch=main&label=linters)](https://github.com/couchbase/couchbase-cxx-client/actions?query=workflow%3Alinters+branch%3Amain) [![sanitizers](https://img.shields.io/github/actions/workflow/status/couchbase/couchbase-cxx-client/sanitizers.yml?branch=main&label=sanitizers)](https://github.com/couchbase/couchbase-cxx-client/actions?query=workflow%3Asanitizers+branch%3Amain) [![tests](https://img.shields.io/github/actions/workflow/status/couchbase/couchbase-cxx-client/tests.yml?branch=main&label=tests)](https://github.com/couchbase/couchbase-cxx-client/actions?query=workflow%3Atests+branch%3Amain) * Documentation and User Guides: https://docs.couchbase.com/cxx-sdk/current/hello-world/start-using-sdk.html * API Reference: https://docs.couchbase.com/sdk-api/couchbase-cxx-client * Issue Tracker: https://issues.couchbase.com/projects/CXXCBC/issues * Server Documentation: https://docs.couchbase.com/home/server.html ## Using with CPM.cmake [CPM.cmake](https://github.com/cpm-cmake/CPM.cmake) makes it really easy to include library into your project. Use the following snippet to update your `CMakeLists.txt`: ```cmake CPMAddPackage( NAME couchbase_cxx_client GIT_TAG 1.0.5 VERSION 1.0.5 GITHUB_REPOSITORY "couchbase/couchbase-cxx-client" OPTIONS "COUCHBASE_CXX_CLIENT_STATIC_BORINGSSL ON") ``` In case the library installed in the system using `install` target or package management system, `FindPackage` could be used: ```cmake cmake_minimum_required(VERSION 3.19) project(minimal) find_package(couchbase_cxx_client REQUIRED) add_executable(minimal minimal.cxx) target_link_libraries(minimal PRIVATE couchbase_cxx_client::couchbase_cxx_client) ``` ## Building with CMake This repo is being built with `CMake` so everything should build easily once the basic dev dependencies are satisfied (C++17 compiler). ### Building (command-line) ```shell git clone https://github.com/couchbase/couchbase-cxx-client.git cd couchbase-cxx-client mkdir build cmake -S . -B build -DCOUCHBASE_CXX_CLIENT_STATIC_BORINGSSL=ON cmake --build build ``` ## Running Tests The tests are located in the `/test` directory. More tests will be added and this directory will be organized more in the near future to differentiate between the common tests types that might be used for different types of testing (e.g., `unit tests`, `integration tests`, `system tests`). ### Testing (command-line) ```shell cd build export TEST_CONNECTION_STRING=couchbase://127.0.0.1 export TEST_USERNAME=Administrator export TEST_PASSWORD=password export TEST_BUCKET=default ctest ```