kou commented on code in PR #13244:
URL: https://github.com/apache/arrow/pull/13244#discussion_r889780669
##########
cpp/cmake_modules/ThirdpartyToolchain.cmake:
##########
@@ -2234,16 +2234,22 @@ if((NOT ARROW_SIMD_LEVEL STREQUAL "NONE") OR (NOT
ARROW_RUNTIME_SIMD_LEVEL STREQ
else()
set(ARROW_USE_XSIMD FALSE)
endif()
+
+set(ARROW_XSIMD_REQUIRED_VERSION "8.1.0")
+
if(ARROW_USE_XSIMD)
- set(xsimd_SOURCE "BUNDLED")
- resolve_dependency(xsimd)
+ resolve_dependency(xsimd REQUIRED_VERSION ${ARROW_XSIMD_REQUIRED_VERSION})
- add_library(xsimd INTERFACE IMPORTED)
- if(CMAKE_VERSION VERSION_LESS 3.11)
- set_target_properties(xsimd PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
- "${XSIMD_INCLUDE_DIR}")
+ if(xsimd_SOURCE STREQUAL "BUNDLED")
+ add_library(xsimd INTERFACE IMPORTED)
+ if(CMAKE_VERSION VERSION_LESS 3.11)
+ set_target_properties(xsimd PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
+ "${XSIMD_INCLUDE_DIR}")
+ else()
+ target_include_directories(xsimd INTERFACE "${XSIMD_INCLUDE_DIR}")
+ endif()
Review Comment:
`target_include_directories()` in 3.10 or earlier doesn't support
`INTERFACE` against `IMPORTED` target:
https://cmake.org/cmake/help/latest/command/target_include_directories.html
> New in version 3.11: Allow setting INTERFACE items on [IMPORTED
targets](https://cmake.org/cmake/help/latest/manual/cmake-buildsystem.7.html#imported-targets).
For `ucx::ucx` case, we need to add similar version check. It may be better
that we add `arrow_imported_target_interface_include_directories()` or
something and use it.
--
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]