C++ adapter which wraps redis++ to communicate to the instrumentation Redis database
To build RedisAdapter as a standalone library, including tests and benchmarking (cmake required)
-
From the root directory:
cmake -S . -B build -D REDIS_ADAPTER_TEST=1 -D REDIS_ADAPTER_BENCHMARK=1 && cmake --build build -
Start Redis using the redis-start.sh script
./redis-start.sh -
Run the test executable in the build directory
./build/redis-adapter-test -
Run the benchmark executable in the build directory.
./build/redis-adapter-benchmark [host]
To integrate RedisAdapter into your CMake project:
-
Add the RedisAdapter repository to your project's directory structure.
-
Include the RedisAdapter project using:
add_subdirectory(RedisAdapter) -
Add
${REDIS_ADAPTER_SOURCES}to your list of sources to build. One way to do that is to add${REDIS_ADAPTER_SOURCES}where you create your executable target:add_executable(RedisAdapterTest main.cpp ${REDIS_ADAPTER_SOURCES}) -
Include the
${REDIS_ADAPTER_INCLUDE_DIRS}in your include directories using:include_directories(${REDIS_ADAPTER_INCLUDE_DIRS}) -
Link against
${REDIS_ADAPTER_LIBRARIES}by adding it to your target's libraries list:target_link_libraries(RedisAdapterTest ${REDIS_ADAPTER_LIBRARIES}) -
Require
${REDIS_ADAPTER_COMPILER_FEATURES}by adding it to your target's compiler features list:target_compile_features(RedisAdapterTest PUBLIC ${REDIS_ADAPTER_COMPILER_FEATURES})
Example CMakeLists.txt:
cmake_minimum_required(VERSION 3.6)
project(RedisAdapterTest LANGUAGES CXX)
# Include the CMakeLists.txt file for RedisAdapter
add_subdirectory(RedisAdapter)
# Compile this project's sources and RedisAdapter's sources into RedisAdapterTest
add_executable(RedisAdapterTest main.cpp ${REDIS_ADAPTER_SOURCES})
# Add RedisAdapter's include directories
include_directories(${REDIS_ADAPTER_INCLUDE_DIRS})
# Link RedisAdapter's library dependencies against our executable
target_link_libraries(RedisAdapterTest ${REDIS_ADAPTER_LIBRARIES})
# Require RedisAdapter's compiler features
target_compile_features(RedisAdapterTest PUBLIC ${REDIS_ADAPTER_COMPILER_FEATURES})