jorisvandenbossche commented on code in PR #41494:
URL: https://github.com/apache/arrow/pull/41494#discussion_r1587440885


##########
python/CMakeLists.txt:
##########
@@ -265,11 +246,44 @@ message(STATUS "NumPy include dir: ${NUMPY_INCLUDE_DIRS}")
 
 include(UseCython)
 
-# PyArrow C++
+# Arrow C++ and set default PyArrow build options
 include(GNUInstallDirs)
-
 find_package(Arrow REQUIRED)
 
+# Top level cmake dir
+if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
+  option(PYARROW_BUILD_ACERO "Build the PyArrow Acero integration" 
${ARROW_ACERO})
+  option(PYARROW_BUILD_CUDA "Build the PyArrow CUDA support" ${ARROW_CUDA})
+  option(PYARROW_BUILD_DATASET "Build the PyArrow Dataset integration" 
${ARROW_DATASET})
+  option(PYARROW_BUILD_FLIGHT "Build the PyArrow Flight integration" 
${ARROW_FLIGHT})
+  option(PYARROW_BUILD_GANDIVA "Build the PyArrow Gandiva integration" 
${ARROW_GANDIVA})
+  option(PYARROW_BUILD_ORC "Build the PyArrow ORC integration" ${ARROW_ORC})
+  option(PYARROW_BUILD_PARQUET "Build the PyArrow Parquet integration" 
${ARROW_PARQUET})
+  option(PYARROW_BUILD_PARQUET_ENCRYPTION
+         "Build the PyArrow Parquet encryption integration" 
${PARQUET_REQUIRE_ENCRYPTION})
+  option(PYARROW_BUILD_SUBSTRAIT "Build the PyArrow Substrait integration"
+         ${ARROW_SUBSTRAIT})
+  option(PYARROW_BUILD_AZURE "Build the PyArrow Azure integration" 
${ARROW_AZURE})
+  option(PYARROW_BUILD_GCS "Build the PyArrow GCS integration" ${ARROW_GCS})
+  option(PYARROW_BUILD_S3 "Build the PyArrow S3 integration" ${ARROW_S3})
+  option(PYARROW_BUILD_HDFS "Build the PyArrow HDFS integration" ${ARROW_HDFS})
+  option(PYARROW_BUNDLE_ARROW_CPP "Bundle the Arrow C++ libraries" OFF)
+  option(PYARROW_BUNDLE_CYTHON_CPP "Bundle the C++ files generated by Cython" 
OFF)
+  option(PYARROW_GENERATE_COVERAGE "Build with Cython code coverage enabled" 
OFF)
+  set(PYARROW_CXXFLAGS
+      ""
+      CACHE STRING "Compiler flags to append when compiling Arrow")
+endif()
+
+# enforce module dependencies
+if(PYARROW_BUILD_SUBSTRAIT)
+  set(PYARROW_BUILD_DATASET ON)
+endif()
+if(PYARROW_BUILD_DATASET)
+  set(PYARROW_BUILD_ACERO ON)
+endif()

Review Comment:
   This is to ensure we keep the same logic as we have now in setup.py, but we 
could in theory also leave this out (and ensure the scripts don't explicitly 
disable Acero when enabling Dataset)



-- 
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: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to