jorisvandenbossche commented on a change in pull request #11778: URL: https://github.com/apache/arrow/pull/11778#discussion_r761282525
########## File path: docs/source/developers/cpp/building.rst ########## @@ -121,6 +121,99 @@ On MSYS2: Building ======== +All the instructions below assume that you have cloned the Arrow git +repository and navigated to the ``cpp`` subdirectory: + +.. code-block:: shell + + $ git clone https://github.com/apache/arrow.git + $ cd arrow/cpp + +CMake presets +------------- + +Using CMake version 3.21.0 or higher, some presets for various build +configurations are provided. You can get a list of the available presets +using ``cmake --list-presets``: + +.. code-block:: shell + + $ cmake --list-presets + Available configure presets: + + "ninja-debug-minimal" - Debug build without anything enabled + "ninja-debug-basic" - Debug build with tests and reduced dependencies + "ninja-debug" - Debug build with tests and more optional components + [ etc. ] + +You can inspect the specific options enabled by a given preset using +``cmake -N --preset <preset name>``: + +.. code-block:: shell + + $ cmake --preset -N ninja-debug-minimal + Preset CMake variables: + + ARROW_BUILD_INTEGRATION="OFF" + ARROW_BUILD_STATIC="OFF" + ARROW_BUILD_TESTS="OFF" + ARROW_EXTRA_ERROR_CONTEXT="ON" + ARROW_WITH_RE2="OFF" + ARROW_WITH_UTF8PROC="OFF" + CMAKE_BUILD_TYPE="Debug" + +You can also create a build from a given preset: + +.. code-block:: shell + + $ mkdir build + $ cd build + $ cmake .. --preset ninja-debug-minimal + Preset CMake variables: + + ARROW_BUILD_INTEGRATION="OFF" + ARROW_BUILD_STATIC="OFF" + ARROW_BUILD_TESTS="OFF" + ARROW_EXTRA_ERROR_CONTEXT="ON" + ARROW_WITH_RE2="OFF" + ARROW_WITH_UTF8PROC="OFF" + CMAKE_BUILD_TYPE="Debug" + + -- Building using CMake version: 3.21.3 + [ etc. ] + +and then ask to compile the build targets: + +.. code-block:: shell + + $ cmake --build . Review comment: OK, I understand, but I just want to give the feedback that we should try to be consistent with those things (or explain what it is equivalent to, since we use something else lower down in the text). Building C++ / CMake is already quite confusing, so we try to be as clear as possible :) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
