summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/build_cmake/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/wiredtiger/build_cmake/README.md')
-rw-r--r--src/third_party/wiredtiger/build_cmake/README.md35
1 files changed, 31 insertions, 4 deletions
diff --git a/src/third_party/wiredtiger/build_cmake/README.md b/src/third_party/wiredtiger/build_cmake/README.md
index 370df3732c7..42842bbe524 100644
--- a/src/third_party/wiredtiger/build_cmake/README.md
+++ b/src/third_party/wiredtiger/build_cmake/README.md
@@ -1,13 +1,15 @@
# Building WiredTiger with CMake
-> *CMake support for building wiredtiger is an active work-in-progress. As of this time CMake can **only** build the WiredTiger library for POSIX platforms (Linux & Darwin) on x86 hosts. We suggest you continue using the autoconf build until further support is added.*
+> *CMake support for building wiredtiger is an active work-in-progress. As of this time CMake can **only** build the WiredTiger library for POSIX platforms (Linux & Darwin). We suggest you continue using the SCons buildsystem when compiling for Windows.*
### Build Dependencies
To build with CMake we **require** the following dependencies:
* `cmake` : Official CMake install instructions found here: https://cmake.org/install/
- * *WiredTiger supports CMake 3.11+*
+ * *WiredTiger supports CMake 3.10+*
* `ninja` : Official ninja install instructions found here: https://ninja-build.org/
+* `python3-dev` : Consult your package management application for installation instructions. This is needed for building with Python support.
+* `swig`: Consult your package management application for installation instructions. This is needed for building with Python support.
We also strongly suggest the following dependencies are also installed (for improved build times):
@@ -23,6 +25,7 @@ Alternatively you can use your system's package manager to install the dependenc
sudo apt-get install cmake cmake-curses-gui
sudo apt-get install ccache
sudo apt-get install ninja-build
+sudo apt-get install python3-dev swig
```
###### Install commands for Mac (using HomeBrew)
@@ -31,10 +34,10 @@ sudo apt-get install ninja-build
brew install ninja
brew install ccache
brew install cmake
+brew install python
+brew install swig
```
-
-
### Building the WiredTiger Library
> *The below commands are written for Linux and Darwin hosts. Windows instructions coming soon!*
@@ -80,6 +83,7 @@ There are a number of additional configuration options you can pass to the CMake
* `-DHAVE_DIAGNOSTIC=1` : Enable WiredTiger diagnostics
* `-DHAVE_ATTACH=1` : Enable to pause for debugger attach on failure
* `-DENABLE_STRICT=1` : Compile with strict compiler warnings enabled
+* `-DENABLE_PYTHON=1` : Compile the python API
* `-DCMAKE_INSTALL_PREFIX=<path-to-install-directory>` : Path to install directory
---
@@ -118,3 +122,26 @@ $ cmake -DCMAKE_TOOLCHAIN_FILE=../build_cmake/toolchains/gcc.cmake -G Ninja ../.
$ cd build
$ cmake -DCMAKE_TOOLCHAIN_FILE=../build_cmake/toolchains/clang.cmake -G Ninja ../.
```
+
+### Running WiredTiger C Tests
+
+The WiredTiger CMake build makes available a suite of C/C++ based tests (separate from the Python testsuite). The run all the tests available, ensure you're in the build directory and execute:
+
+```bash
+ctest -j$(nproc)
+```
+
+To run with verbose output:
+
+```bash
+ctest -j$(nproc) -VV
+```
+
+To run a specfic test:
+
+```bash
+# Note: -R specifies a regex, where any matching test will be run
+ctest -R <test_name> -j$(nproc)
+```
+
+See `ctest --help` for a range of additional supported options.