Maarten Pronk created ARROW-18256:
-------------------------------------

             Summary: [C++] External/shared libthrift requires IMPORTED_IMPLIB 
in FindThrift.cmake 
                 Key: ARROW-18256
                 URL: https://issues.apache.org/jira/browse/ARROW-18256
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++
    Affects Versions: 10.0.0
            Reporter: Maarten Pronk


As mentioned in ARROW-18255, over at 
[https://github.com/JuliaPackaging/Yggdrasil/pull/5425,] we cross-compile Arrow 
to make it easily available within the Julia ecosystem. 

When compiling with `DARROW_THRIFT_USE_SHARED=ON` and using an external 
libthrift, CMAKE warns with:

 
{quote}[12:00:54] CMake Warning (dev) in CMakeLists.txt:
[12:00:54]   Policy CMP0111 is not set: An imported target missing its location 
property
[12:00:54]   fails during generation.  Run "cmake --help-policy CMP0111" for 
policy
[12:00:54]   details.  Use the cmake_policy command to set the policy and 
suppress this
[12:00:54]   warning.
[12:00:54]
[12:00:54]   IMPORTED_IMPLIB not set for imported target "thrift::thrift" 
configuration
[12:00:54]   "RELEASE".
[12:00:54] This warning is for project developers.  Use -Wno-dev to suppress it.
{quote}
This will lead to linking errors later on. I've fixed the warning with the 
following patch for v10.

 
{quote}{{diff --git a/cpp/cmake_modules/FindThrift.cmake 
b/cpp/cmake_modules/FindThrift.cmake}}
{{index 2f20a5cb5..2d1e728aa 100644}}
{{--- a/cpp/cmake_modules/FindThrift.cmake}}
{{+++ b/cpp/cmake_modules/FindThrift.cmake}}
{{@@ -146,6 +146,7 @@ if(Thrift_FOUND)}}
{{   endif()}}
{{   set_target_properties(thrift::thrift}}
{{                         PROPERTIES IMPORTED_LOCATION "${THRIFT_LIB}"}}
{{+                                   IMPORTED_IMPLIB "${THRIFT_LIB}"}}
{{                                    INTERFACE_INCLUDE_DIRECTORIES 
"${THRIFT_INCLUDE_DIR}")}}
{{   if(WIN32 AND NOT MSVC_TOOLCHAIN)}}
{{     # We don't need this for Visual C++ because Thrift uses}}
{quote}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to