diff options
author | Alexey Anisimov <alexey.anisimov@mongodb.com> | 2022-02-04 16:37:46 +1100 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-02-04 06:05:41 +0000 |
commit | 2a473fa3929f0f7ff9669cb156c3079a7b5b022b (patch) | |
tree | 951a98cbb62cc1a3c616bb93aa858f2c88545e35 | |
parent | 2a871685d0c4883c254ad5f1dccc91e8879de92b (diff) | |
download | mongo-2a473fa3929f0f7ff9669cb156c3079a7b5b022b.tar.gz |
Import wiredtiger: f76e9e4452ef39d30a5349a2bb411b6db937de96 from branch mongodb-master
ref: 26d6fbf95e..f76e9e4452
for: 5.3.0
WT-8768 Distinguish between hard and soft CMake dependencies in README
-rw-r--r-- | src/third_party/wiredtiger/cmake/README.md | 35 | ||||
-rw-r--r-- | src/third_party/wiredtiger/import.data | 2 |
2 files changed, 20 insertions, 17 deletions
diff --git a/src/third_party/wiredtiger/cmake/README.md b/src/third_party/wiredtiger/cmake/README.md index 75fa960da6a..b5ee697228a 100644 --- a/src/third_party/wiredtiger/cmake/README.md +++ b/src/third_party/wiredtiger/cmake/README.md @@ -6,14 +6,17 @@ To build with CMake we **require** the following dependencies: * `cmake` : Official CMake install instructions found here: https://cmake.org/install/ * *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): +We also suggest the following dependencies are also installed (for improved build times): +* `ninja` : Official ninja install instructions found here: https://ninja-build.org/ * `ccache` : Official ccache download instructions found here: https://ccache.dev/download.html +If wanting to compile the Python API, we also require the following dependencies: + +* `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. + ##### Package Manager Instructions Alternatively you can use your system's package manager to install the dependencies listed above. Depending on the system, the following commands can be run: @@ -21,7 +24,9 @@ Alternatively you can use your system's package manager to install the dependenc ###### Install commands for Ubuntu & Debian (tested on Ubuntu 18.04) ```bash -sudo apt-get install cmake cmake-curses-gui +sudo apt-get install cmake +# Optional ... +sudo apt-get install cmake-curses-gui sudo apt-get install ccache sudo apt-get install ninja-build sudo apt-get install python3-dev swig @@ -30,9 +35,10 @@ sudo apt-get install python3-dev swig ###### Install commands for Mac (using HomeBrew) ```bash +brew install cmake +# Optional ... brew install ninja brew install ccache -brew install cmake brew install python brew install swig ``` @@ -41,6 +47,7 @@ brew install swig ```bash choco install cmake +# Optional ... choco install ninja choco install ccache --version=3.7.9 choco install swig @@ -49,8 +56,6 @@ choco install python --pre ### Building the WiredTiger Library -> *The below commands are written for Linux and Darwin hosts. Windows instructions coming soon!* - Building the WiredTiger library is relatively straightforward. Navigate to the top level of the WiredTiger repository and run the following commands: ###### Configure your build @@ -58,8 +63,8 @@ Building the WiredTiger library is relatively straightforward. Navigate to the t ```bash # Create a new directory to run your build from $ mkdir build && cd build -# Run the cmake configure step. Note: '-G Ninja' tells CMake to generate a ninja build -$ cmake -G Ninja ../. +# Run the cmake configure step. Note: Can optionally pass '-G Ninja' to generate a ninja build. +$ cmake ../. ... -- Configuring done -- Generating done @@ -70,16 +75,14 @@ $ cmake -G Ninja ../. ###### Run your build -In the same directory you configured your build, run the `ninja` command to start the build: +In the same directory you configured your build, run the `make` command to start the build: ```bash -$ ninja +$ make ... [211/211 (100%) 2.464s] Creating library symlink libwiredtiger.so ``` -*Note: Ninja doesn't need a `-j` option; it knows how many cores are available.* - ###### Configuration Options There are a number of additional configuration options you can pass to the CMake configuration step. A summary of some important options you will come to know: @@ -123,14 +126,14 @@ By default CMake will use your default system compiler (`cc`). If you want to us ```bash $ cd build -$ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/gcc.cmake -G Ninja ../. +$ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/gcc.cmake ../. ``` *Using the Clang Toolchain* ```bash $ cd build -$ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/clang.cmake -G Ninja ../. +$ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/clang.cmake ../. ``` ### Running WiredTiger C Tests diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data index 6fc8a8ceaba..10afb18dd18 100644 --- a/src/third_party/wiredtiger/import.data +++ b/src/third_party/wiredtiger/import.data @@ -2,5 +2,5 @@ "vendor": "wiredtiger", "github": "wiredtiger/wiredtiger.git", "branch": "mongodb-master", - "commit": "26d6fbf95e3dcbaa6d61069fb3f2c44615ae5c5b" + "commit": "f76e9e4452ef39d30a5349a2bb411b6db937de96" } |