1# Introduction
2
3Project name: wsrep-lib - Integration library for WSREP API
4
5The purpose of this project is to implement C++ wrapper
6for wsrep API with additional convenience for transaction
7processing.
8
9This project will abstract away most of the transaction state
10management required on DBMS side and will provide simple
11C++ interface for key set population, data set population,
12commit processing, write set applying etc.
13
14# Build Instructions
15
16In order to build the library, run
17
18  cmake <cmake options> .
19  make
20
21## Build Requirements
22
23* C++ compiler (g++ 5.4 or later recommended)
24* CMake version 2.8 or later
25* The following Boost libraries are required if the unit tests and
26  the sample program is compiled
27  * Unit Test Framework
28  * Program Options
29  * Filesystem
30  * Thread
31
32## CMake Options
33
34* WSREP_LIB_WITH_UNIT_TESTS - Compile unit tests (default ON)
35* WSREP_LIB_WITH_AUTO_TEST - Run unit tests automatically as a part
36  of compilation (default OFF)
37* WSREP_LIB_WITH_DBSIM - Compile sample program (default ON)
38* WSREP_LIB_WITH_ASAN - Enable address sanitizer instrumentation (default OFF)
39* WSREP_LIB_WITH_TSAN - Enable thread sanitizer instrumentation (default OFF)
40* WSREP_LIB_WITH_DOCUMENTATION - Generate documentation, requires Doxygen
41  (default OFF)
42* WSREP_LIB_WITH_COVERAGE - Compile with coverage instrumentation (default OFF)
43* WSREP_LIB_STRICT_BUILD_FLAGS - Compile with strict build flags, currently
44  enables -Weffc++ (default OFF)
45* WSREP_LIB_MAINTAINER_MODE - Make every compiler warning to be treated
46  as error, enables -Werror compiler flag (default OFF)
47