Yibo Cai created ARROW-16751:
--------------------------------

             Summary: [C++] Unify target include directories
                 Key: ARROW-16751
                 URL: https://issues.apache.org/jira/browse/ARROW-16751
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C++
            Reporter: Yibo Cai
             Fix For: 9.0.0


Context: [https://github.com/apache/arrow/pull/13244#discussion_r889780669]

{{target_include_directories()}} in cmake 3.10 or earlier doesn't support 
{{INTERFACE}} against {{IMPORTED}} target, so we have to check cmake version 
like below:
{code:java}
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()
{code}
Above code is duplicated for some targets. There are also some targets (e.g. 
ucx::ucx) missed the check.
We can add a function {{arrow_imported_target_interface_include_directories()}} 
to make it simpler.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to