This is an automated email from the ASF dual-hosted git repository.

kou pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/main by this push:
     new 6eb537e009 GH-46386: [C++] Ensure using our CMake packages not 
Find*.cmake (#46387)
6eb537e009 is described below

commit 6eb537e009474e8ea7cc5251a39bc11733346769
Author: Sutou Kouhei <[email protected]>
AuthorDate: Mon May 12 14:09:29 2025 +0900

    GH-46386: [C++] Ensure using our CMake packages not Find*.cmake (#46387)
    
    ### Rationale for this change
    
    If a downstream package has `FindArrow.cmake`, it may be used not our 
`ArrowConfig.cmake`.
    
    ### What changes are included in this PR?
    
    Use `find_dependency(Arrow CONFIG)` instead of `find_dependency(Arrow)`.
    
    ### Are these changes tested?
    
    Yes.
    
    ### Are there any user-facing changes?
    
    Yes.
    * GitHub Issue: #46386
    
    Authored-by: Sutou Kouhei <[email protected]>
    Signed-off-by: Sutou Kouhei <[email protected]>
---
 cpp/src/arrow/ArrowTestingConfig.cmake.in              | 2 +-
 cpp/src/arrow/acero/ArrowAceroConfig.cmake.in          | 2 +-
 cpp/src/arrow/dataset/ArrowDatasetConfig.cmake.in      | 7 ++++++-
 cpp/src/arrow/engine/ArrowSubstraitConfig.cmake.in     | 8 ++++----
 cpp/src/arrow/flight/ArrowFlightConfig.cmake.in        | 2 +-
 cpp/src/arrow/flight/ArrowFlightTestingConfig.cmake.in | 4 ++--
 cpp/src/arrow/flight/sql/ArrowFlightSqlConfig.cmake.in | 2 +-
 cpp/src/arrow/gpu/ArrowCUDAConfig.cmake.in             | 2 +-
 cpp/src/gandiva/GandivaConfig.cmake.in                 | 2 +-
 cpp/src/parquet/ParquetConfig.cmake.in                 | 2 +-
 10 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/cpp/src/arrow/ArrowTestingConfig.cmake.in 
b/cpp/src/arrow/ArrowTestingConfig.cmake.in
index 148d6516a0..9e631e4fc9 100644
--- a/cpp/src/arrow/ArrowTestingConfig.cmake.in
+++ b/cpp/src/arrow/ArrowTestingConfig.cmake.in
@@ -29,7 +29,7 @@
 set(ARROW_TESTING_SYSTEM_DEPENDENCIES "@ARROW_TESTING_SYSTEM_DEPENDENCIES@")
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
+find_dependency(Arrow CONFIG)
 
 arrow_find_dependencies("${ARROW_TESTING_SYSTEM_DEPENDENCIES}")
 
diff --git a/cpp/src/arrow/acero/ArrowAceroConfig.cmake.in 
b/cpp/src/arrow/acero/ArrowAceroConfig.cmake.in
index 66aa2b4078..fbb7a2bcaf 100644
--- a/cpp/src/arrow/acero/ArrowAceroConfig.cmake.in
+++ b/cpp/src/arrow/acero/ArrowAceroConfig.cmake.in
@@ -27,7 +27,7 @@
 @PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
+find_dependency(Arrow CONFIG)
 
 include("${CMAKE_CURRENT_LIST_DIR}/ArrowAceroTargets.cmake")
 
diff --git a/cpp/src/arrow/dataset/ArrowDatasetConfig.cmake.in 
b/cpp/src/arrow/dataset/ArrowDatasetConfig.cmake.in
index 4573ac3718..381d819276 100644
--- a/cpp/src/arrow/dataset/ArrowDatasetConfig.cmake.in
+++ b/cpp/src/arrow/dataset/ArrowDatasetConfig.cmake.in
@@ -30,7 +30,12 @@ set(ARROW_DATASET_REQUIRED_DEPENDENCIES 
"@ARROW_DATASET_REQUIRED_DEPENDENCIES@")
 
 include(CMakeFindDependencyMacro)
 foreach(dependency ${ARROW_DATASET_REQUIRED_DEPENDENCIES})
-  find_dependency(${dependency})
+  # Currently all dependencies in ARROW_DATASET_REQUIRED_DEPENDENCIES
+  # are created by Apache Arrow C++. So we can use CONFIG for all
+  # dependencies. If ARROW_DATASET_REQUIRED_DEPENDENCIES may have
+  # dependencies not created by Apache Arrow C++, we need to revisit
+  # this CONFIG.
+  find_dependency(${dependency} CONFIG)
 endforeach()
 
 include("${CMAKE_CURRENT_LIST_DIR}/ArrowDatasetTargets.cmake")
diff --git a/cpp/src/arrow/engine/ArrowSubstraitConfig.cmake.in 
b/cpp/src/arrow/engine/ArrowSubstraitConfig.cmake.in
index 932c52ac65..013ed92849 100644
--- a/cpp/src/arrow/engine/ArrowSubstraitConfig.cmake.in
+++ b/cpp/src/arrow/engine/ArrowSubstraitConfig.cmake.in
@@ -27,10 +27,10 @@
 @PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
-find_dependency(ArrowAcero)
-find_dependency(ArrowDataset)
-find_dependency(Parquet)
+find_dependency(Arrow CONFIG)
+find_dependency(ArrowAcero CONFIG)
+find_dependency(ArrowDataset CONFIG)
+find_dependency(Parquet CONFIG)
 
 include("${CMAKE_CURRENT_LIST_DIR}/ArrowSubstraitTargets.cmake")
 
diff --git a/cpp/src/arrow/flight/ArrowFlightConfig.cmake.in 
b/cpp/src/arrow/flight/ArrowFlightConfig.cmake.in
index 92803289f1..61f9904025 100644
--- a/cpp/src/arrow/flight/ArrowFlightConfig.cmake.in
+++ b/cpp/src/arrow/flight/ArrowFlightConfig.cmake.in
@@ -29,7 +29,7 @@
 set(ARROW_FLIGHT_SYSTEM_DEPENDENCIES "@ARROW_FLIGHT_SYSTEM_DEPENDENCIES@")
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
+find_dependency(Arrow CONFIG)
 
 if(ARROW_BUILD_STATIC)
   arrow_find_dependencies("${ARROW_FLIGHT_SYSTEM_DEPENDENCIES}")
diff --git a/cpp/src/arrow/flight/ArrowFlightTestingConfig.cmake.in 
b/cpp/src/arrow/flight/ArrowFlightTestingConfig.cmake.in
index 3c043b05a6..c77d9d168e 100644
--- a/cpp/src/arrow/flight/ArrowFlightTestingConfig.cmake.in
+++ b/cpp/src/arrow/flight/ArrowFlightTestingConfig.cmake.in
@@ -27,8 +27,8 @@
 @PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-find_dependency(ArrowFlight)
-find_dependency(ArrowTesting)
+find_dependency(ArrowFlight CONFIG)
+find_dependency(ArrowTesting CONFIG)
 
 include("${CMAKE_CURRENT_LIST_DIR}/ArrowFlightTestingTargets.cmake")
 
diff --git a/cpp/src/arrow/flight/sql/ArrowFlightSqlConfig.cmake.in 
b/cpp/src/arrow/flight/sql/ArrowFlightSqlConfig.cmake.in
index 3a70dbdeda..a282215af6 100644
--- a/cpp/src/arrow/flight/sql/ArrowFlightSqlConfig.cmake.in
+++ b/cpp/src/arrow/flight/sql/ArrowFlightSqlConfig.cmake.in
@@ -27,7 +27,7 @@
 @PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-find_dependency(ArrowFlight)
+find_dependency(ArrowFlight CONFIG)
 
 include("${CMAKE_CURRENT_LIST_DIR}/ArrowFlightSqlTargets.cmake")
 
diff --git a/cpp/src/arrow/gpu/ArrowCUDAConfig.cmake.in 
b/cpp/src/arrow/gpu/ArrowCUDAConfig.cmake.in
index 626c536a08..5336b77016 100644
--- a/cpp/src/arrow/gpu/ArrowCUDAConfig.cmake.in
+++ b/cpp/src/arrow/gpu/ArrowCUDAConfig.cmake.in
@@ -27,7 +27,7 @@
 @PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
+find_dependency(Arrow CONFIG)
 if(CMAKE_VERSION VERSION_LESS 3.17)
   find_package(CUDA REQUIRED)
   add_library(ArrowCUDA::cuda_driver SHARED IMPORTED)
diff --git a/cpp/src/gandiva/GandivaConfig.cmake.in 
b/cpp/src/gandiva/GandivaConfig.cmake.in
index 68579debd1..e99b3006c5 100644
--- a/cpp/src/gandiva/GandivaConfig.cmake.in
+++ b/cpp/src/gandiva/GandivaConfig.cmake.in
@@ -30,7 +30,7 @@ set(ARROW_LLVM_VERSIONS "@ARROW_LLVM_VERSIONS@")
 set(ARROW_ZSTD_SOURCE "@zstd_SOURCE@")
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
+find_dependency(Arrow CONFIG)
 if(DEFINED CMAKE_MODULE_PATH)
   set(GANDIVA_CMAKE_MODULE_PATH_OLD ${CMAKE_MODULE_PATH})
 else()
diff --git a/cpp/src/parquet/ParquetConfig.cmake.in 
b/cpp/src/parquet/ParquetConfig.cmake.in
index 90e1d4d00b..cb30783238 100644
--- a/cpp/src/parquet/ParquetConfig.cmake.in
+++ b/cpp/src/parquet/ParquetConfig.cmake.in
@@ -32,7 +32,7 @@
 set(PARQUET_SYSTEM_DEPENDENCIES "@PARQUET_SYSTEM_DEPENDENCIES@")
 
 include(CMakeFindDependencyMacro)
-find_dependency(Arrow)
+find_dependency(Arrow CONFIG)
 
 if(ARROW_BUILD_STATIC)
   arrow_find_dependencies("${PARQUET_SYSTEM_DEPENDENCIES}")

Reply via email to