From e55bdb8db32b9e17648b5fcbaf8cefa2962555df Mon Sep 17 00:00:00 2001 From: Rossi Sun Date: Fri, 10 Jan 2025 02:52:21 +0800 Subject: [PATCH] A lot of reorganization of cmake presets --- cpp/CMakePresets.json | 261 ++++++++++++++++++++++-------------------- 1 file changed, 135 insertions(+), 126 deletions(-) diff --git a/cpp/CMakePresets.json b/cpp/CMakePresets.json index 51df648ad7167..62770da758c2b 100644 --- a/cpp/CMakePresets.json +++ b/cpp/CMakePresets.json @@ -6,6 +6,30 @@ "patch": 0 }, "configurePresets": [ + { + "name": "_allocator-none", + "hidden": true, + "cacheVariables": { + "ARROW_JEMALLOC": "OFF", + "ARROW_MIMALLOC": "OFF" + } + }, + { + "name": "_allocator-jemalloc", + "hidden": true, + "cacheVariables": { + "ARROW_JEMALLOC": "ON", + "ARROW_MIMALLOC": "OFF" + } + }, + { + "name": "_allocator-mimalloc", + "hidden": true, + "cacheVariables": { + "ARROW_JEMALLOC": "OFF", + "ARROW_MIMALLOC": "ON" + } + }, { "name": "base", "hidden": true, @@ -46,34 +70,6 @@ "CMAKE_BUILD_TYPE": "RelWithDebInfo" } }, - { - "name": "features-emscripten", - "hidden": true, - "cacheVariables": { - "ARROW_ACERO": "ON", - "ARROW_BUILD_SHARED": "OFF", - "ARROW_BUILD_STATIC": "ON", - "ARROW_CSV": "ON", - "ARROW_CUDA": "OFF", - "ARROW_DEPENDENCY_SOURCE": "BUNDLED", - "ARROW_DEPENDENCY_USE_SHARED": "OFF", - "ARROW_ENABLE_THREADING": "OFF", - "ARROW_FLIGHT": "OFF", - "ARROW_IPC": "ON", - "ARROW_JEMALLOC": "OFF", - "ARROW_JSON": "ON", - "ARROW_MIMALLOC": "OFF", - "ARROW_ORC": "ON", - "ARROW_RUNTIME_SIMD_LEVEL": "NONE", - "ARROW_S3": "OFF", - "ARROW_SIMD_LEVEL": "NONE", - "ARROW_SUBSTRAIT": "ON", - "ARROW_WITH_BROTLI": "ON", - "ARROW_WITH_OPENTELEMETRY": "OFF", - "ARROW_WITH_SNAPPY": "ON", - "CMAKE_C_BYTE_ORDER": "LITTLE_ENDIAN" - } - }, { "name": "features-minimal", "hidden": true, @@ -103,7 +99,6 @@ "cacheVariables": { "ARROW_SUBSTRAIT": "ON", "ARROW_ACERO": "ON", - "ARROW_MIMALLOC": "ON", "ARROW_PARQUET": "ON", "ARROW_WITH_BROTLI": "ON", "ARROW_WITH_BZ2": "ON", @@ -174,15 +169,11 @@ { "name": "features-python", "inherits": [ - "features-main" + "features-main", + "features-python-minimal" ], "hidden": true, "cacheVariables": { - "ARROW_COMPUTE": "ON", - "ARROW_CSV": "ON", - "ARROW_DATASET": "ON", - "ARROW_FILESYSTEM": "ON", - "ARROW_JSON": "ON", "ARROW_ORC": "ON" } }, @@ -193,35 +184,54 @@ "features-filesystems", "features-flight-sql", "features-gandiva", - "features-main", - "features-python-minimal" + "features-python" ], "hidden": true, "cacheVariables": { - "ARROW_ORC": "ON", "PARQUET_REQUIRE_ENCRYPTION": "ON" } }, { "name": "features-maximal", "inherits": [ - "features-main", - "features-cuda", - "features-filesystems", - "features-flight-sql", - "features-gandiva", "features-python-maximal" ], "hidden": true, "cacheVariables": { "ARROW_BUILD_EXAMPLES": "ON", "ARROW_BUILD_UTILITIES": "ON", - "ARROW_ORC": "ON", "ARROW_SKYHOOK": "ON", "ARROW_TENSORFLOW": "ON", "PARQUET_BUILD_EXAMPLES": "ON", - "PARQUET_BUILD_EXECUTABLES": "ON", - "PARQUET_REQUIRE_ENCRYPTION": "ON" + "PARQUET_BUILD_EXECUTABLES": "ON" + } + }, + { + "name": "features-emscripten", + "hidden": true, + "cacheVariables": { + "ARROW_ACERO": "ON", + "ARROW_BUILD_SHARED": "OFF", + "ARROW_BUILD_STATIC": "ON", + "ARROW_CSV": "ON", + "ARROW_CUDA": "OFF", + "ARROW_DEPENDENCY_SOURCE": "BUNDLED", + "ARROW_DEPENDENCY_USE_SHARED": "OFF", + "ARROW_ENABLE_THREADING": "OFF", + "ARROW_FLIGHT": "OFF", + "ARROW_IPC": "ON", + "ARROW_JEMALLOC": "OFF", + "ARROW_JSON": "ON", + "ARROW_MIMALLOC": "OFF", + "ARROW_ORC": "ON", + "ARROW_RUNTIME_SIMD_LEVEL": "NONE", + "ARROW_S3": "OFF", + "ARROW_SIMD_LEVEL": "NONE", + "ARROW_SUBSTRAIT": "ON", + "ARROW_WITH_BROTLI": "ON", + "ARROW_WITH_OPENTELEMETRY": "OFF", + "ARROW_WITH_SNAPPY": "ON", + "CMAKE_C_BYTE_ORDER": "LITTLE_ENDIAN" } }, { @@ -371,45 +381,97 @@ "cacheVariables": {} }, { - "name": "ninja-debug-valgrind-basic", + "name": "ninja-debug-emscripten", "inherits": [ "base-debug", - "features-basic", - "features-valgrind" + "features-emscripten" ], - "displayName": "Debug build for Valgrind with reduced dependencies", + "displayName": "Debug build which builds an Emscripten library", "cacheVariables": {} }, { - "name": "ninja-debug-valgrind", + "name": "ninja-debug-valgrind-minimal", "inherits": [ - "base-debug", - "features-main", - "features-valgrind" + "features-valgrind", + "ninja-debug-minimal" ], - "displayName": "Debug build for Valgrind with more optional components", + "displayName": "Debug build for Valgrind without anything enabled", "cacheVariables": {} }, { - "name": "ninja-debug-valgrind-minimal", + "name": "ninja-debug-valgrind-basic", "inherits": [ - "base-debug", - "features-minimal", - "features-valgrind" + "features-valgrind", + "ninja-debug-basic" ], - "displayName": "Debug build for Valgrind without anything enabled", + "displayName": "Debug build for Valgrind with tests and reduced dependencies", + "cacheVariables": {} + }, + { + "name": "ninja-debug-valgrind", + "inherits": [ + "features-valgrind", + "ninja-debug" + ], + "displayName": "Debug build for Valgrind with tests and more optional components", "cacheVariables": {} }, { "name": "ninja-debug-valgrind-maximal", "inherits": [ - "base-debug", - "features-maximal", - "features-valgrind" + "features-valgrind", + "ninja-debug-maximal" + ], + "displayName": "Debug build for Valgrind with tests and everything enabled", + "cacheVariables": {} + }, + { + "name": "ninja-debug-asan", + "inherits": [ + "_allocator-none", + "ninja-debug", + "sanitizer-asan" + ], + "displayName": "Debug build for ASAN with tests and more optional components", + "cacheVariables": {} + }, + { + "name": "ninja-debug-tsan", + "inherits": [ + "_allocator-none", + "ninja-debug", + "sanitizer-tsan" + ], + "displayName": "Debug build for TSAN with tests and more optional components", + "cacheVariables": {} + }, + { + "name": "ninja-debug-ubsan", + "inherits": [ + "_allocator-none", + "ninja-debug", + "sanitizer-ubsan" ], - "displayName": "Debug build for Valgrind with everything enabled", + "displayName": "Debug build for UBSAN with tests and more optional components", "cacheVariables": {} }, + { + "name": "fuzzing", + "inherits": [ + "base", + "sanitizer-asan", + "sanitizer-ubsan" + ], + "displayName": "Debug build with IPC and Parquet fuzzing targets", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "CMAKE_C_COMPILER": "clang", + "CMAKE_CXX_COMPILER": "clang++", + "ARROW_IPC": "ON", + "ARROW_PARQUET": "ON", + "ARROW_FUZZING": "ON" + } + }, { "name": "ninja-release-minimal", "inherits": [ @@ -446,24 +508,6 @@ "displayName": "Release build with CUDA integration", "cacheVariables": {} }, - { - "name": "ninja-debug-emscripten", - "inherits": [ - "features-emscripten", - "base-debug" - ], - "displayName": "Debug build which builds an Emscripten library", - "cacheVariables": {} - }, - { - "name": "ninja-release-emscripten", - "inherits": [ - "features-emscripten", - "base-release" - ], - "displayName": "Release build which builds an Emscripten library", - "cacheVariables": {} - }, { "name": "ninja-release-flight", "inherits": [ @@ -527,6 +571,15 @@ "displayName": "Release build with everything enabled (except benchmarks)", "cacheVariables": {} }, + { + "name": "ninja-release-emscripten", + "inherits": [ + "features-emscripten", + "base-release" + ], + "displayName": "Release build which builds an Emscripten library", + "cacheVariables": {} + }, { "name": "ninja-benchmarks-basic", "inherits": [ @@ -553,50 +606,6 @@ ], "displayName": "Benchmarking build with everything enabled", "cacheVariables": {} - }, - { - "name": "ninja-debug-asan", - "inherits": [ - "sanitizer-asan", - "ninja-debug" - ], - "displayName": "Debug ASAN build with tests and more optional components", - "cacheVariables": {} - }, - { - "name": "ninja-debug-tsan", - "inherits": [ - "sanitizer-tsan", - "ninja-debug" - ], - "displayName": "Debug TSAN build with tests and more optional components", - "cacheVariables": {} - }, - { - "name": "ninja-debug-ubsan", - "inherits": [ - "sanitizer-ubsan", - "ninja-debug" - ], - "displayName": "Debug UBSAN build with tests and more optional components", - "cacheVariables": {} - }, - { - "name": "fuzzing", - "inherits": [ - "sanitizer-asan", - "sanitizer-ubsan", - "base" - ], - "displayName": "Debug build with IPC and Parquet fuzzing targets", - "cacheVariables": { - "CMAKE_BUILD_TYPE": "Debug", - "CMAKE_C_COMPILER": "clang", - "CMAKE_CXX_COMPILER": "clang++", - "ARROW_IPC": "ON", - "ARROW_PARQUET": "ON", - "ARROW_FUZZING": "ON" - } } ] }