Commits


Pradeep Garigipati authored and Sutou Kouhei committed 21c514adee6
ARROW-14678: [C++] Add reasonable CMake presets for quick dev setup Run the following command for cpp builds to see list of presets available. ```bash cmake --list-presets .. ``` Run the following command to setup build folder. ```bash cmake --preset <chosen-preset-name> .. ``` Note that, we can still pass the regular `-D<OPTION>=<VALUE` style arguments when using presets. Presets require a minimum CMake version of 3.19. One doesn't need to use presets, they just provide a convenience if the user feasible CMake version. This is not a comprehensive list by any means, but only a starter based on what I have been building in arrow repository. If there are given list of most used combinations, please suggest and I can add accordingly. The reason I added `ninja` prefix to current presets is different any potential `make` or `msvc` generators we might add later. Shown below is the first few lines of sample output of CMake command with presets, it shows the CMake options set by the chosen preset. ```bash Preset CMake variables: ARROW_BUILD_BENCHMARKS:BOOL="OFF" ARROW_BUILD_TESTS:BOOL="ON" ARROW_COMPUTE:BOOL="ON" ARROW_CSV:BOOL="ON" ARROW_CUDA="ON" ARROW_DATASET:BOOL="OFF" ARROW_FILESYSTEM:BOOL="ON" ARROW_GANDIVA:BOOL="OFF" ARROW_GANDIVA_JAVA:BOOL="OFF" ARROW_GANDIVA_JNI:BOOL="OFF" ARROW_IPC:BOOL="ON" ARROW_PARQUET:BOOL="OFF" ARROW_PLASMA_JAVA_CLIENT:BOOL="OFF" ARROW_PYTHON:BOOL="ON" ARROW_SKYHOOK:BOOL="OFF" ARROW_WITH_RE2:BOOL="ON" CMAKE_BUILD_TYPE:STRING="Debug" CMAKE_INSTALL_PREFIX:PATH="/home/pradeep/arrow/cpp/build/ninja-debug-cuda/pkg" -- Building using CMake version: 3.21.4 ``` Closes #11689 from 9prady9/ARROW-14678-Add-reasonable-CMake-Presets-for-quick-a Lead-authored-by: Pradeep Garigipati <pradeep.garigipati@gmail.com> Co-authored-by: Sutou Kouhei <kou@cozmixng.org> Signed-off-by: Sutou Kouhei <kou@clear-code.com>