9prady9 commented on a change in pull request #11778:
URL: https://github.com/apache/arrow/pull/11778#discussion_r757190086
##########
File path: cpp/CMakePresets.json
##########
@@ -1,165 +1,231 @@
-{
- "version": 2,
- "cmakeMinimumRequired": {
- "major": 3,
- "minor": 20,
- "patch": 0
- },
- "configurePresets": [
- {
- "name": "ninja-benchmarks",
- "description": "Build for benchmarks",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": "ON",
- "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
- "ARROW_BUILD_TESTS": "OFF"
- }
- },
- {
- "name": "ninja-debug",
- "description": "Debug configuration with basic build",
- "binaryDir": "${sourceDir}/build/${presetName}",
- "generator": "Ninja",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_BUILD_TESTS": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_COMPUTE": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CSV": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CUDA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_DATASET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JAVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JNI": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_FILESYSTEM": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_IPC": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_PARQUET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PLASMA_JAVA_CLIENT": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PYTHON": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_SKYHOOK": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_WITH_RE2": {
- "type": "BOOL",
- "value": "ON"
- },
- "CMAKE_BUILD_TYPE": {
- "type": "String",
- "value": "Debug"
- },
- "CMAKE_INSTALL_PREFIX": {
- "type": "PATH",
- "value": "${sourceDir}/build/${presetName}/pkg"
- }
- }
- },
- {
- "name": "ninja-debug-cuda",
- "description": "Debug Arrow build with CUDA extensions (requires CUDA
toolkit)",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_CUDA": "ON"
- }
- },
- {
- "name": "ninja-debug-dataset",
- "description": "Builds Arrow Dataset modules",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_DATASET": "ON"
- }
- },
- {
- "name": "ninja-debug-gandiva",
- "description": "Builds Gandiva libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-debug-parquet",
- "description": "Builds Parquet libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- },
- {
- "name": "ninja-debug-skyhook",
- "description": "Builds Skyhook libraries",
-
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_SKYHOOK": "ON"
- }
- },
- {
- "name": "ninja-release",
- "description": "Release configuration",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "CMAKE_BUILD_TYPE": "Release"
- }
- },
- {
- "name": "ninja-release-gandiva",
- "description": "Release configuration with Gandiva",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-release-parquet",
- "description": "Release configuration with Parquet",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- }
- ]
-}
+{
+ "version": 3,
+ "cmakeMinimumRequired": {
+ "major": 3,
+ "minor": 21,
+ "patch": 0
+ },
+ "configurePresets": [
+ {
+ "name": "ninja-debug-minimal",
+ "displayName": "Debug build without anything enabled",
+ "generator": "Ninja",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_STATIC": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_WITH_RE2": "OFF",
+ "ARROW_WITH_UTF8PROC": "OFF",
+ "CMAKE_BUILD_TYPE": "Debug"
+ }
+ },
+ {
+ "name": "ninja-debug-basic",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Debug build with tests and reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "ON",
+ "ARROW_BUILD_TESTS": "ON",
+ "ARROW_COMPUTE": "ON",
+ "ARROW_CSV": "ON",
+ "ARROW_DATASET": "ON",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_FILESYSTEM": "ON",
+ "ARROW_JSON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and more optional components",
+ "cacheVariables": {
+ "ARROW_ENGINE": "ON",
+ "ARROW_MIMALLOC": "ON",
+ "ARROW_PARQUET": "ON",
+ "ARROW_WITH_BROTLI": "ON",
+ "ARROW_WITH_BZ2": "ON",
+ "ARROW_WITH_LZ4": "ON",
+ "ARROW_WITH_RE2": "ON",
+ "ARROW_WITH_SNAPPY": "ON",
+ "ARROW_WITH_UTF8PROC": "ON",
+ "ARROW_WITH_ZLIB": "ON",
+ "ARROW_WITH_ZSTD": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-cuda",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and CUDA integration",
+ "cacheVariables": {
+ "ARROW_CUDA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-filesystems",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and filesystems",
+ "cacheVariables": {
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_S3": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-flight",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Flight",
+ "cacheVariables": {
+ "ARROW_FLIGHT": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-gandiva",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Gandiva",
+ "cacheVariables": {
+ "ARROW_GANDIVA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-python",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Python support",
+ "cacheVariables": {
+ "ARROW_PYTHON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-maximal",
+ "inherits": "ninja-debug",
+ "displayName": "Debug build with everything enabled (except benchmarks
and CUDA)",
+ "cacheVariables": {
+ "ARROW_BUILD_EXAMPLES": "ON",
+ "ARROW_BUILD_UTILITIES": "ON",
+ "ARROW_FLIGHT": "ON",
+ "ARROW_GANDIVA": "ON",
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_HIVESERVER2": "ON",
+ "ARROW_ORC": "ON",
+ "ARROW_PLASMA": "ON",
+ "ARROW_PYTHON": "ON",
+ "ARROW_S3": "ON",
+ "ARROW_SKYHOOK": "ON",
+ "ARROW_TENSORFLOW": "ON",
+ "PARQUET_BUILD_EXAMPLES": "ON",
+ "PARQUET_BUILD_EXECUTABLES": "ON",
+ "PARQUET_REQUIRE_ENCRYPTION": "ON"
+ }
+ },
+
+ {
+ "name": "ninja-release-minimal",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Release build without anything enabled",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
Review comment:
This is already specified in parent unless the parent has it set to
`OFF` incorrectly.
##########
File path: cpp/CMakePresets.json
##########
@@ -1,165 +1,231 @@
-{
- "version": 2,
- "cmakeMinimumRequired": {
- "major": 3,
- "minor": 20,
- "patch": 0
- },
- "configurePresets": [
- {
- "name": "ninja-benchmarks",
- "description": "Build for benchmarks",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": "ON",
- "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
- "ARROW_BUILD_TESTS": "OFF"
- }
- },
- {
- "name": "ninja-debug",
- "description": "Debug configuration with basic build",
- "binaryDir": "${sourceDir}/build/${presetName}",
- "generator": "Ninja",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_BUILD_TESTS": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_COMPUTE": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CSV": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CUDA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_DATASET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JAVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JNI": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_FILESYSTEM": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_IPC": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_PARQUET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PLASMA_JAVA_CLIENT": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PYTHON": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_SKYHOOK": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_WITH_RE2": {
- "type": "BOOL",
- "value": "ON"
- },
- "CMAKE_BUILD_TYPE": {
- "type": "String",
- "value": "Debug"
- },
- "CMAKE_INSTALL_PREFIX": {
- "type": "PATH",
- "value": "${sourceDir}/build/${presetName}/pkg"
- }
- }
- },
- {
- "name": "ninja-debug-cuda",
- "description": "Debug Arrow build with CUDA extensions (requires CUDA
toolkit)",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_CUDA": "ON"
- }
- },
- {
- "name": "ninja-debug-dataset",
- "description": "Builds Arrow Dataset modules",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_DATASET": "ON"
- }
- },
- {
- "name": "ninja-debug-gandiva",
- "description": "Builds Gandiva libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-debug-parquet",
- "description": "Builds Parquet libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- },
- {
- "name": "ninja-debug-skyhook",
- "description": "Builds Skyhook libraries",
-
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_SKYHOOK": "ON"
- }
- },
- {
- "name": "ninja-release",
- "description": "Release configuration",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "CMAKE_BUILD_TYPE": "Release"
- }
- },
- {
- "name": "ninja-release-gandiva",
- "description": "Release configuration with Gandiva",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-release-parquet",
- "description": "Release configuration with Parquet",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- }
- ]
-}
+{
+ "version": 3,
+ "cmakeMinimumRequired": {
+ "major": 3,
+ "minor": 21,
+ "patch": 0
+ },
+ "configurePresets": [
+ {
+ "name": "ninja-debug-minimal",
+ "displayName": "Debug build without anything enabled",
+ "generator": "Ninja",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_STATIC": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_WITH_RE2": "OFF",
+ "ARROW_WITH_UTF8PROC": "OFF",
+ "CMAKE_BUILD_TYPE": "Debug"
+ }
+ },
+ {
+ "name": "ninja-debug-basic",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Debug build with tests and reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "ON",
+ "ARROW_BUILD_TESTS": "ON",
+ "ARROW_COMPUTE": "ON",
+ "ARROW_CSV": "ON",
+ "ARROW_DATASET": "ON",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_FILESYSTEM": "ON",
+ "ARROW_JSON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and more optional components",
+ "cacheVariables": {
+ "ARROW_ENGINE": "ON",
+ "ARROW_MIMALLOC": "ON",
+ "ARROW_PARQUET": "ON",
+ "ARROW_WITH_BROTLI": "ON",
+ "ARROW_WITH_BZ2": "ON",
+ "ARROW_WITH_LZ4": "ON",
+ "ARROW_WITH_RE2": "ON",
+ "ARROW_WITH_SNAPPY": "ON",
+ "ARROW_WITH_UTF8PROC": "ON",
+ "ARROW_WITH_ZLIB": "ON",
+ "ARROW_WITH_ZSTD": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-cuda",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and CUDA integration",
+ "cacheVariables": {
+ "ARROW_CUDA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-filesystems",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and filesystems",
+ "cacheVariables": {
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_S3": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-flight",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Flight",
+ "cacheVariables": {
+ "ARROW_FLIGHT": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-gandiva",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Gandiva",
+ "cacheVariables": {
+ "ARROW_GANDIVA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-python",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Python support",
+ "cacheVariables": {
+ "ARROW_PYTHON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-maximal",
+ "inherits": "ninja-debug",
+ "displayName": "Debug build with everything enabled (except benchmarks
and CUDA)",
+ "cacheVariables": {
+ "ARROW_BUILD_EXAMPLES": "ON",
+ "ARROW_BUILD_UTILITIES": "ON",
+ "ARROW_FLIGHT": "ON",
+ "ARROW_GANDIVA": "ON",
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_HIVESERVER2": "ON",
+ "ARROW_ORC": "ON",
+ "ARROW_PLASMA": "ON",
+ "ARROW_PYTHON": "ON",
+ "ARROW_S3": "ON",
+ "ARROW_SKYHOOK": "ON",
+ "ARROW_TENSORFLOW": "ON",
+ "PARQUET_BUILD_EXAMPLES": "ON",
+ "PARQUET_BUILD_EXECUTABLES": "ON",
+ "PARQUET_REQUIRE_ENCRYPTION": "ON"
+ }
+ },
+
+ {
+ "name": "ninja-release-minimal",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Release build without anything enabled",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-basic",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Release build with reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release",
+ "inherits": "ninja-debug",
+ "displayName": "Release build with more optional components",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-cuda",
+ "inherits": "ninja-debug-cuda",
+ "displayName": "Release build with CUDA integration",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
Review comment:
Even here we can inherit from two I think: `ninja-debug-cuda` and
`ninja-reelase-basic`
##########
File path: cpp/CMakePresets.json
##########
@@ -1,165 +1,231 @@
-{
- "version": 2,
- "cmakeMinimumRequired": {
- "major": 3,
- "minor": 20,
- "patch": 0
- },
- "configurePresets": [
- {
- "name": "ninja-benchmarks",
- "description": "Build for benchmarks",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": "ON",
- "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
- "ARROW_BUILD_TESTS": "OFF"
- }
- },
- {
- "name": "ninja-debug",
- "description": "Debug configuration with basic build",
- "binaryDir": "${sourceDir}/build/${presetName}",
- "generator": "Ninja",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_BUILD_TESTS": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_COMPUTE": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CSV": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CUDA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_DATASET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JAVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JNI": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_FILESYSTEM": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_IPC": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_PARQUET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PLASMA_JAVA_CLIENT": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PYTHON": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_SKYHOOK": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_WITH_RE2": {
- "type": "BOOL",
- "value": "ON"
- },
- "CMAKE_BUILD_TYPE": {
- "type": "String",
- "value": "Debug"
- },
- "CMAKE_INSTALL_PREFIX": {
- "type": "PATH",
- "value": "${sourceDir}/build/${presetName}/pkg"
- }
- }
- },
- {
- "name": "ninja-debug-cuda",
- "description": "Debug Arrow build with CUDA extensions (requires CUDA
toolkit)",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_CUDA": "ON"
- }
- },
- {
- "name": "ninja-debug-dataset",
- "description": "Builds Arrow Dataset modules",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_DATASET": "ON"
- }
- },
- {
- "name": "ninja-debug-gandiva",
- "description": "Builds Gandiva libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-debug-parquet",
- "description": "Builds Parquet libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- },
- {
- "name": "ninja-debug-skyhook",
- "description": "Builds Skyhook libraries",
-
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_SKYHOOK": "ON"
- }
- },
- {
- "name": "ninja-release",
- "description": "Release configuration",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "CMAKE_BUILD_TYPE": "Release"
- }
- },
- {
- "name": "ninja-release-gandiva",
- "description": "Release configuration with Gandiva",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-release-parquet",
- "description": "Release configuration with Parquet",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- }
- ]
-}
+{
+ "version": 3,
+ "cmakeMinimumRequired": {
+ "major": 3,
+ "minor": 21,
+ "patch": 0
+ },
+ "configurePresets": [
+ {
+ "name": "ninja-debug-minimal",
+ "displayName": "Debug build without anything enabled",
+ "generator": "Ninja",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_STATIC": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_WITH_RE2": "OFF",
+ "ARROW_WITH_UTF8PROC": "OFF",
+ "CMAKE_BUILD_TYPE": "Debug"
+ }
+ },
+ {
+ "name": "ninja-debug-basic",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Debug build with tests and reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "ON",
+ "ARROW_BUILD_TESTS": "ON",
+ "ARROW_COMPUTE": "ON",
+ "ARROW_CSV": "ON",
+ "ARROW_DATASET": "ON",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
Review comment:
Parent preset has the same value, we can avoid this here.
##########
File path: cpp/CMakePresets.json
##########
@@ -1,165 +1,231 @@
-{
- "version": 2,
- "cmakeMinimumRequired": {
- "major": 3,
- "minor": 20,
- "patch": 0
- },
- "configurePresets": [
- {
- "name": "ninja-benchmarks",
- "description": "Build for benchmarks",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": "ON",
- "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
- "ARROW_BUILD_TESTS": "OFF"
- }
- },
- {
- "name": "ninja-debug",
- "description": "Debug configuration with basic build",
- "binaryDir": "${sourceDir}/build/${presetName}",
- "generator": "Ninja",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_BUILD_TESTS": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_COMPUTE": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CSV": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CUDA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_DATASET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JAVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JNI": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_FILESYSTEM": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_IPC": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_PARQUET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PLASMA_JAVA_CLIENT": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PYTHON": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_SKYHOOK": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_WITH_RE2": {
- "type": "BOOL",
- "value": "ON"
- },
- "CMAKE_BUILD_TYPE": {
- "type": "String",
- "value": "Debug"
- },
- "CMAKE_INSTALL_PREFIX": {
- "type": "PATH",
- "value": "${sourceDir}/build/${presetName}/pkg"
- }
- }
- },
- {
- "name": "ninja-debug-cuda",
- "description": "Debug Arrow build with CUDA extensions (requires CUDA
toolkit)",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_CUDA": "ON"
- }
- },
- {
- "name": "ninja-debug-dataset",
- "description": "Builds Arrow Dataset modules",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_DATASET": "ON"
- }
- },
- {
- "name": "ninja-debug-gandiva",
- "description": "Builds Gandiva libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-debug-parquet",
- "description": "Builds Parquet libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- },
- {
- "name": "ninja-debug-skyhook",
- "description": "Builds Skyhook libraries",
-
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_SKYHOOK": "ON"
- }
- },
- {
- "name": "ninja-release",
- "description": "Release configuration",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "CMAKE_BUILD_TYPE": "Release"
- }
- },
- {
- "name": "ninja-release-gandiva",
- "description": "Release configuration with Gandiva",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-release-parquet",
- "description": "Release configuration with Parquet",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- }
- ]
-}
+{
+ "version": 3,
+ "cmakeMinimumRequired": {
+ "major": 3,
+ "minor": 21,
+ "patch": 0
+ },
+ "configurePresets": [
+ {
+ "name": "ninja-debug-minimal",
+ "displayName": "Debug build without anything enabled",
+ "generator": "Ninja",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_STATIC": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_WITH_RE2": "OFF",
+ "ARROW_WITH_UTF8PROC": "OFF",
+ "CMAKE_BUILD_TYPE": "Debug"
+ }
+ },
+ {
+ "name": "ninja-debug-basic",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Debug build with tests and reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "ON",
+ "ARROW_BUILD_TESTS": "ON",
+ "ARROW_COMPUTE": "ON",
+ "ARROW_CSV": "ON",
+ "ARROW_DATASET": "ON",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_FILESYSTEM": "ON",
+ "ARROW_JSON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and more optional components",
+ "cacheVariables": {
+ "ARROW_ENGINE": "ON",
+ "ARROW_MIMALLOC": "ON",
+ "ARROW_PARQUET": "ON",
+ "ARROW_WITH_BROTLI": "ON",
+ "ARROW_WITH_BZ2": "ON",
+ "ARROW_WITH_LZ4": "ON",
+ "ARROW_WITH_RE2": "ON",
+ "ARROW_WITH_SNAPPY": "ON",
+ "ARROW_WITH_UTF8PROC": "ON",
+ "ARROW_WITH_ZLIB": "ON",
+ "ARROW_WITH_ZSTD": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-cuda",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and CUDA integration",
+ "cacheVariables": {
+ "ARROW_CUDA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-filesystems",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and filesystems",
+ "cacheVariables": {
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_S3": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-flight",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Flight",
+ "cacheVariables": {
+ "ARROW_FLIGHT": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-gandiva",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Gandiva",
+ "cacheVariables": {
+ "ARROW_GANDIVA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-python",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Python support",
+ "cacheVariables": {
+ "ARROW_PYTHON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-maximal",
+ "inherits": "ninja-debug",
+ "displayName": "Debug build with everything enabled (except benchmarks
and CUDA)",
+ "cacheVariables": {
+ "ARROW_BUILD_EXAMPLES": "ON",
+ "ARROW_BUILD_UTILITIES": "ON",
+ "ARROW_FLIGHT": "ON",
+ "ARROW_GANDIVA": "ON",
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_HIVESERVER2": "ON",
+ "ARROW_ORC": "ON",
+ "ARROW_PLASMA": "ON",
+ "ARROW_PYTHON": "ON",
+ "ARROW_S3": "ON",
+ "ARROW_SKYHOOK": "ON",
+ "ARROW_TENSORFLOW": "ON",
+ "PARQUET_BUILD_EXAMPLES": "ON",
+ "PARQUET_BUILD_EXECUTABLES": "ON",
+ "PARQUET_REQUIRE_ENCRYPTION": "ON"
+ }
+ },
+
+ {
+ "name": "ninja-release-minimal",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Release build without anything enabled",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-basic",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Release build with reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release",
+ "inherits": "ninja-debug",
+ "displayName": "Release build with more optional components",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-cuda",
+ "inherits": "ninja-debug-cuda",
+ "displayName": "Release build with CUDA integration",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-flight",
+ "inherits": "ninja-debug-flight",
+ "displayName": "Release build with Flight",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-gandiva",
+ "inherits": "ninja-debug-gandiva",
+ "displayName": "Release build with Gandiva",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-python",
+ "inherits": "ninja-debug-python",
+ "displayName": "Release build with Python support",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-maximal",
+ "inherits": "ninja-debug-maximal",
+ "displayName": "Release build with everything enabled (except benchmarks
and CUDA)",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+
+ {
+ "name": "ninja-benchmarks-basic",
+ "inherits": "ninja-release-basic",
+ "displayName": "Benchmarking build with reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_BENCHMARKS": "ON",
+ "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
+ "CMAKE_BUILD_TYPE": "RelWithDebInfo"
+ }
+ },
+ {
+ "name": "ninja-benchmarks",
+ "inherits": "ninja-release",
+ "displayName": "Benchmarking build with more optional components",
+ "cacheVariables": {
+ "ARROW_BUILD_BENCHMARKS": "ON",
+ "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
+ "CMAKE_BUILD_TYPE": "RelWithDebInfo"
Review comment:
inherit from `ninja-benchmarks-basic` and `ninja-release` and we avoid
the variables.
##########
File path: cpp/CMakePresets.json
##########
@@ -1,165 +1,231 @@
-{
- "version": 2,
- "cmakeMinimumRequired": {
- "major": 3,
- "minor": 20,
- "patch": 0
- },
- "configurePresets": [
- {
- "name": "ninja-benchmarks",
- "description": "Build for benchmarks",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": "ON",
- "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
- "ARROW_BUILD_TESTS": "OFF"
- }
- },
- {
- "name": "ninja-debug",
- "description": "Debug configuration with basic build",
- "binaryDir": "${sourceDir}/build/${presetName}",
- "generator": "Ninja",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_BUILD_TESTS": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_COMPUTE": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CSV": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CUDA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_DATASET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JAVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JNI": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_FILESYSTEM": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_IPC": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_PARQUET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PLASMA_JAVA_CLIENT": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PYTHON": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_SKYHOOK": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_WITH_RE2": {
- "type": "BOOL",
- "value": "ON"
- },
- "CMAKE_BUILD_TYPE": {
- "type": "String",
- "value": "Debug"
- },
- "CMAKE_INSTALL_PREFIX": {
- "type": "PATH",
- "value": "${sourceDir}/build/${presetName}/pkg"
- }
- }
- },
- {
- "name": "ninja-debug-cuda",
- "description": "Debug Arrow build with CUDA extensions (requires CUDA
toolkit)",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_CUDA": "ON"
- }
- },
- {
- "name": "ninja-debug-dataset",
- "description": "Builds Arrow Dataset modules",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_DATASET": "ON"
- }
- },
- {
- "name": "ninja-debug-gandiva",
- "description": "Builds Gandiva libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-debug-parquet",
- "description": "Builds Parquet libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- },
- {
- "name": "ninja-debug-skyhook",
- "description": "Builds Skyhook libraries",
-
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_SKYHOOK": "ON"
- }
- },
- {
- "name": "ninja-release",
- "description": "Release configuration",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "CMAKE_BUILD_TYPE": "Release"
- }
- },
- {
- "name": "ninja-release-gandiva",
- "description": "Release configuration with Gandiva",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-release-parquet",
- "description": "Release configuration with Parquet",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- }
- ]
-}
+{
+ "version": 3,
+ "cmakeMinimumRequired": {
+ "major": 3,
+ "minor": 21,
+ "patch": 0
+ },
+ "configurePresets": [
+ {
+ "name": "ninja-debug-minimal",
+ "displayName": "Debug build without anything enabled",
+ "generator": "Ninja",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_STATIC": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_WITH_RE2": "OFF",
+ "ARROW_WITH_UTF8PROC": "OFF",
+ "CMAKE_BUILD_TYPE": "Debug"
+ }
+ },
+ {
+ "name": "ninja-debug-basic",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Debug build with tests and reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "ON",
+ "ARROW_BUILD_TESTS": "ON",
+ "ARROW_COMPUTE": "ON",
+ "ARROW_CSV": "ON",
+ "ARROW_DATASET": "ON",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_FILESYSTEM": "ON",
+ "ARROW_JSON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and more optional components",
+ "cacheVariables": {
+ "ARROW_ENGINE": "ON",
+ "ARROW_MIMALLOC": "ON",
+ "ARROW_PARQUET": "ON",
+ "ARROW_WITH_BROTLI": "ON",
+ "ARROW_WITH_BZ2": "ON",
+ "ARROW_WITH_LZ4": "ON",
+ "ARROW_WITH_RE2": "ON",
+ "ARROW_WITH_SNAPPY": "ON",
+ "ARROW_WITH_UTF8PROC": "ON",
+ "ARROW_WITH_ZLIB": "ON",
+ "ARROW_WITH_ZSTD": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-cuda",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and CUDA integration",
+ "cacheVariables": {
+ "ARROW_CUDA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-filesystems",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and filesystems",
+ "cacheVariables": {
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_S3": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-flight",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Flight",
+ "cacheVariables": {
+ "ARROW_FLIGHT": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-gandiva",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Gandiva",
+ "cacheVariables": {
+ "ARROW_GANDIVA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-python",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Python support",
+ "cacheVariables": {
+ "ARROW_PYTHON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-maximal",
+ "inherits": "ninja-debug",
+ "displayName": "Debug build with everything enabled (except benchmarks
and CUDA)",
+ "cacheVariables": {
+ "ARROW_BUILD_EXAMPLES": "ON",
+ "ARROW_BUILD_UTILITIES": "ON",
+ "ARROW_FLIGHT": "ON",
+ "ARROW_GANDIVA": "ON",
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_HIVESERVER2": "ON",
+ "ARROW_ORC": "ON",
+ "ARROW_PLASMA": "ON",
+ "ARROW_PYTHON": "ON",
+ "ARROW_S3": "ON",
+ "ARROW_SKYHOOK": "ON",
+ "ARROW_TENSORFLOW": "ON",
+ "PARQUET_BUILD_EXAMPLES": "ON",
+ "PARQUET_BUILD_EXECUTABLES": "ON",
+ "PARQUET_REQUIRE_ENCRYPTION": "ON"
+ }
+ },
+
+ {
+ "name": "ninja-release-minimal",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Release build without anything enabled",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-basic",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Release build with reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release",
+ "inherits": "ninja-debug",
+ "displayName": "Release build with more optional components",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-cuda",
+ "inherits": "ninja-debug-cuda",
+ "displayName": "Release build with CUDA integration",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
Review comment:
Seems like, all the following can use this:
- ninja-release-flight
- ninja-release-gandiva
- ninja-release-python
- ninja-release-maximal
##########
File path: cpp/CMakePresets.json
##########
@@ -1,165 +1,231 @@
-{
- "version": 2,
- "cmakeMinimumRequired": {
- "major": 3,
- "minor": 20,
- "patch": 0
- },
- "configurePresets": [
- {
- "name": "ninja-benchmarks",
- "description": "Build for benchmarks",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": "ON",
- "ARROW_BUILD_BENCHMARKS_REFERENCE": "ON",
- "ARROW_BUILD_TESTS": "OFF"
- }
- },
- {
- "name": "ninja-debug",
- "description": "Debug configuration with basic build",
- "binaryDir": "${sourceDir}/build/${presetName}",
- "generator": "Ninja",
- "cacheVariables": {
- "ARROW_BUILD_BENCHMARKS": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_BUILD_TESTS": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_COMPUTE": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CSV": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_CUDA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_DATASET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JAVA": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_GANDIVA_JNI": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_FILESYSTEM": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_IPC": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_PARQUET": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PLASMA_JAVA_CLIENT": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_PYTHON": {
- "type": "BOOL",
- "value": "ON"
- },
- "ARROW_SKYHOOK": {
- "type": "BOOL",
- "value": "OFF"
- },
- "ARROW_WITH_RE2": {
- "type": "BOOL",
- "value": "ON"
- },
- "CMAKE_BUILD_TYPE": {
- "type": "String",
- "value": "Debug"
- },
- "CMAKE_INSTALL_PREFIX": {
- "type": "PATH",
- "value": "${sourceDir}/build/${presetName}/pkg"
- }
- }
- },
- {
- "name": "ninja-debug-cuda",
- "description": "Debug Arrow build with CUDA extensions (requires CUDA
toolkit)",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_CUDA": "ON"
- }
- },
- {
- "name": "ninja-debug-dataset",
- "description": "Builds Arrow Dataset modules",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_DATASET": "ON"
- }
- },
- {
- "name": "ninja-debug-gandiva",
- "description": "Builds Gandiva libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-debug-parquet",
- "description": "Builds Parquet libraries",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- },
- {
- "name": "ninja-debug-skyhook",
- "description": "Builds Skyhook libraries",
-
- "inherits": "ninja-debug",
- "cacheVariables": {
- "ARROW_SKYHOOK": "ON"
- }
- },
- {
- "name": "ninja-release",
- "description": "Release configuration",
- "inherits": "ninja-debug",
- "cacheVariables": {
- "CMAKE_BUILD_TYPE": "Release"
- }
- },
- {
- "name": "ninja-release-gandiva",
- "description": "Release configuration with Gandiva",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_GANDIVA": "ON"
- }
- },
- {
- "name": "ninja-release-parquet",
- "description": "Release configuration with Parquet",
- "inherits": "ninja-release",
- "cacheVariables": {
- "ARROW_PARQUET": "ON"
- }
- }
- ]
-}
+{
+ "version": 3,
+ "cmakeMinimumRequired": {
+ "major": 3,
+ "minor": 21,
+ "patch": 0
+ },
+ "configurePresets": [
+ {
+ "name": "ninja-debug-minimal",
+ "displayName": "Debug build without anything enabled",
+ "generator": "Ninja",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_STATIC": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_WITH_RE2": "OFF",
+ "ARROW_WITH_UTF8PROC": "OFF",
+ "CMAKE_BUILD_TYPE": "Debug"
+ }
+ },
+ {
+ "name": "ninja-debug-basic",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Debug build with tests and reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "ON",
+ "ARROW_BUILD_TESTS": "ON",
+ "ARROW_COMPUTE": "ON",
+ "ARROW_CSV": "ON",
+ "ARROW_DATASET": "ON",
+ "ARROW_EXTRA_ERROR_CONTEXT": "ON",
+ "ARROW_FILESYSTEM": "ON",
+ "ARROW_JSON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and more optional components",
+ "cacheVariables": {
+ "ARROW_ENGINE": "ON",
+ "ARROW_MIMALLOC": "ON",
+ "ARROW_PARQUET": "ON",
+ "ARROW_WITH_BROTLI": "ON",
+ "ARROW_WITH_BZ2": "ON",
+ "ARROW_WITH_LZ4": "ON",
+ "ARROW_WITH_RE2": "ON",
+ "ARROW_WITH_SNAPPY": "ON",
+ "ARROW_WITH_UTF8PROC": "ON",
+ "ARROW_WITH_ZLIB": "ON",
+ "ARROW_WITH_ZSTD": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-cuda",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and CUDA integration",
+ "cacheVariables": {
+ "ARROW_CUDA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-filesystems",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and filesystems",
+ "cacheVariables": {
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_S3": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-flight",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Flight",
+ "cacheVariables": {
+ "ARROW_FLIGHT": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-gandiva",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Gandiva",
+ "cacheVariables": {
+ "ARROW_GANDIVA": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-python",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Debug build with tests and Python support",
+ "cacheVariables": {
+ "ARROW_PYTHON": "ON"
+ }
+ },
+ {
+ "name": "ninja-debug-maximal",
+ "inherits": "ninja-debug",
+ "displayName": "Debug build with everything enabled (except benchmarks
and CUDA)",
+ "cacheVariables": {
+ "ARROW_BUILD_EXAMPLES": "ON",
+ "ARROW_BUILD_UTILITIES": "ON",
+ "ARROW_FLIGHT": "ON",
+ "ARROW_GANDIVA": "ON",
+ "ARROW_GCS": "ON",
+ "ARROW_HDFS": "ON",
+ "ARROW_HIVESERVER2": "ON",
+ "ARROW_ORC": "ON",
+ "ARROW_PLASMA": "ON",
+ "ARROW_PYTHON": "ON",
+ "ARROW_S3": "ON",
+ "ARROW_SKYHOOK": "ON",
+ "ARROW_TENSORFLOW": "ON",
+ "PARQUET_BUILD_EXAMPLES": "ON",
+ "PARQUET_BUILD_EXECUTABLES": "ON",
+ "PARQUET_REQUIRE_ENCRYPTION": "ON"
+ }
+ },
+
+ {
+ "name": "ninja-release-minimal",
+ "inherits": "ninja-debug-minimal",
+ "displayName": "Release build without anything enabled",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release-basic",
+ "inherits": "ninja-debug-basic",
+ "displayName": "Release build with reduced dependencies",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "ninja-release",
+ "inherits": "ninja-debug",
+ "displayName": "Release build with more optional components",
+ "cacheVariables": {
+ "ARROW_BUILD_INTEGRATION": "OFF",
+ "ARROW_BUILD_TESTS": "OFF",
+ "ARROW_EXTRA_ERROR_CONTEXT": "OFF",
+ "CMAKE_BUILD_TYPE": "Release"
Review comment:
We can have multiple inheritances using a list. Have you tried
inheriting from `"ninja-debug, ninja-release-basic"` ?
--
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]