You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2018/11/10 20:37:19 UTC
[arrow] branch master updated: PARQUET-1439: Remove
PARQUET_ARROW_LINKAGE option, clean up overall library linking configuration
This is an automated email from the ASF dual-hosted git repository.
wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push:
new 2a69511 PARQUET-1439: Remove PARQUET_ARROW_LINKAGE option, clean up overall library linking configuration
2a69511 is described below
commit 2a695116d97ae8f4dbf673f38c53a3f9feb43baf
Author: Wes McKinney <we...@apache.org>
AuthorDate: Sat Nov 10 15:37:11 2018 -0500
PARQUET-1439: Remove PARQUET_ARROW_LINKAGE option, clean up overall library linking configuration
Author: Wes McKinney <we...@apache.org>
Author: Deepak Majeti <de...@hpe.com>
Author: Kouhei Sutou <ko...@clear-code.com>
Author: Deepak Majeti <md...@apache.org>
Closes #2735 from majetideepak/PARQUET-1439 and squashes the following commits:
6c3e18006 <Wes McKinney> CMake message is different
80bd5cb49 <Wes McKinney> Fix appveyor-cpp-test-cmake-script.bat
da5e19ea7 <Kouhei Sutou> Fix build error with vendored boost
10642b3b6 <Wes McKinney> Link arrow_shared publicly with parquet_shared
ceb664872 <Wes McKinney> Link arrow_shared in statically-linked Parquet tests
6365952f3 <Wes McKinney> Use alias targets for ARROW_BOOST_LIBS
eea1acee2 <Wes McKinney> Fix gflags issue on windows
434bae7ab <Wes McKinney> Fix benchmark linking. Use ADD_ARROW_LIB for gandiva_jni
dc604547a <Kouhei Sutou> Stop to create generic library in ADD_THIRDPARTY_LIB
1b446e0fd <Wes McKinney> ARROW-3745 Do not link static libraries to themselves. Fix static library dependency error
01f235d24 <Wes McKinney> Remove debugging message
a85350450 <Wes McKinney> Clean up link dependencies. There is no such thing as private static link libs
87c5f91d9 <Wes McKinney> Remove PARQUET_ARROW_LINKAGE option
c521fc274 <Deepak Majeti> remove static linkage from travis script
661a03ce4 <Deepak Majeti> Statically link parquet binaries and dynamically link parquet tests
f033cb724 <Deepak Majeti> remove travis ci test
eecbc8802 <Deepak Majeti> PARQUET-1439: Parquet build fails when PARQUET_ARROW_LINKAGE is static
---
ci/appveyor-cpp-test-cmake-script.bat | 8 ++--
ci/travis_before_script_cpp.sh | 1 +
cpp/CMakeLists.txt | 59 ++++++++++++------------
cpp/cmake_modules/BuildUtils.cmake | 46 +++++++++++--------
cpp/cmake_modules/GandivaBuildUtils.cmake | 6 +--
cpp/cmake_modules/ThirdpartyToolchain.cmake | 71 +++++++++++++++++------------
cpp/src/arrow/CMakeLists.txt | 4 +-
cpp/src/arrow/flight/CMakeLists.txt | 12 ++---
cpp/src/arrow/gpu/CMakeLists.txt | 2 +-
cpp/src/arrow/ipc/CMakeLists.txt | 2 +-
cpp/src/arrow/python/CMakeLists.txt | 2 +-
cpp/src/arrow/python/util/CMakeLists.txt | 4 +-
cpp/src/arrow/util/CMakeLists.txt | 8 ++--
cpp/src/gandiva/CMakeLists.txt | 28 +++++++-----
cpp/src/gandiva/jni/CMakeLists.txt | 40 +++++++---------
cpp/src/parquet/CMakeLists.txt | 63 +++++++++++++------------
16 files changed, 188 insertions(+), 168 deletions(-)
diff --git a/ci/appveyor-cpp-test-cmake-script.bat b/ci/appveyor-cpp-test-cmake-script.bat
index c2740b8..86ecd50 100644
--- a/ci/appveyor-cpp-test-cmake-script.bat
+++ b/ci/appveyor-cpp-test-cmake-script.bat
@@ -121,7 +121,7 @@ cmake -G "%GENERATOR%" ^
-DARROW_CXXFLAGS="/MP" ^
.. >nul 2>error.txt
-FINDSTR /M /C:"No static or shared library provided for lz4_static" error.txt || exit /B
+FINDSTR /M /C:"No static or shared library provided for lz4" error.txt || exit /B
set LZ4_HOME=
popd
@@ -164,14 +164,14 @@ cmake -G "%GENERATOR%" ^
.. 2>output.txt
set LIBRARY_FOUND_MSG=Added static library dependency
-for %%x in (snappy gflags brotli_enc brotli_dec brotli_common lz4_static zstd_static) do (
+for %%x in (snappy gflags brotli_enc brotli_dec brotli_common lz4 zstd) do (
echo Checking %%x library path
- FINDSTR /C:"%LIBRARY_FOUND_MSG% %%x: %CONDA_PREFIX:\=/%" output.txt || exit /B
+ FINDSTR /C:"%LIBRARY_FOUND_MSG% %%x_static: %CONDA_PREFIX:\=/%" output.txt || exit /B
)
set LIBRARY_FOUND_MSG=Added shared library dependency
for %%x in (zlib) do (
echo Checking %%x library path
- FINDSTR /C:"%LIBRARY_FOUND_MSG% %%x: %CONDA_PREFIX:\=/%" output.txt || exit /B
+ FINDSTR /C:"%LIBRARY_FOUND_MSG% %%x_shared: %CONDA_PREFIX:\=/%" output.txt || exit /B
)
popd
diff --git a/ci/travis_before_script_cpp.sh b/ci/travis_before_script_cpp.sh
index c9e60e6..f9e0602 100755
--- a/ci/travis_before_script_cpp.sh
+++ b/ci/travis_before_script_cpp.sh
@@ -86,6 +86,7 @@ fi
if [ $ARROW_TRAVIS_PARQUET == "1" ]; then
CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS \
-DARROW_PARQUET=ON \
+-DPARQUET_BUILD_EXAMPLES=ON \
-DPARQUET_BUILD_EXECUTABLES=ON"
fi
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
index 10d6c00..997421c 100644
--- a/cpp/CMakeLists.txt
+++ b/cpp/CMakeLists.txt
@@ -109,11 +109,11 @@ if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
OFF)
option(ARROW_BUILD_STATIC
- "Build the libarrow static libraries"
+ "Build static libraries"
ON)
option(ARROW_BUILD_SHARED
- "Build the libarrow shared libraries"
+ "Build shared libraries"
ON)
option(ARROW_TEST_MEMCHECK
@@ -298,16 +298,13 @@ Always OFF if building binaries"
OFF)
option(PARQUET_BUILD_EXECUTABLES
- "Build the Parquet executable CLI tools"
+ "Build the Parquet executable CLI tools. Requires static libraries to be built."
OFF)
option(PARQUET_BUILD_EXAMPLES
- "Build the Parquet examples"
+ "Build the Parquet examples. Requires static libraries to be built."
OFF)
- set(PARQUET_ARROW_LINKAGE "shared" CACHE STRING
- "How to link Arrow libraries with libparquet.so. static|shared (default shared)")
-
# Gandiva related build options
option(ARROW_GANDIVA
"Build the Gandiva libraries"
@@ -412,6 +409,11 @@ if(ARROW_BUILD_TESTS OR ARROW_BUILD_BENCHMARKS)
set(ARROW_WITH_ZSTD ON)
endif()
+if(PARQUET_BUILD_EXAMPLES OR PARQUET_BUILD_EXECUTABLES)
+ set(ARROW_PARQUET ON)
+ set(ARROW_BUILD_STATIC ON)
+endif()
+
if (MSVC)
# ORC doesn't build on windows
set(ARROW_ORC OFF)
@@ -427,6 +429,8 @@ endif()
if(NOT ARROW_BUILD_TESTS)
set(NO_TESTS 1)
+else()
+ set(ARROW_BUILD_SHARED ON)
endif()
if(NOT ARROW_BUILD_BENCHMARKS)
@@ -628,13 +632,13 @@ endif(UNIX)
set(ARROW_LINK_LIBS)
# Libraries to link statically with libarrow.so
-set(ARROW_STATIC_LINK_LIBS double-conversion::double-conversion)
+set(ARROW_STATIC_LINK_LIBS double-conversion_static)
if (ARROW_WITH_BROTLI)
SET(ARROW_STATIC_LINK_LIBS
- brotli_dec
- brotli_enc
- brotli_common
+ brotli_dec_static
+ brotli_enc_static
+ brotli_common_static
${ARROW_STATIC_LINK_LIBS})
endif()
@@ -647,14 +651,11 @@ if (ARROW_WITH_LZ4)
endif()
if (ARROW_WITH_SNAPPY)
- SET(ARROW_STATIC_LINK_LIBS snappy ${ARROW_STATIC_LINK_LIBS})
+ SET(ARROW_STATIC_LINK_LIBS snappy_static ${ARROW_STATIC_LINK_LIBS})
endif()
if (ARROW_WITH_ZLIB)
- if (ZLIB_SHARED_LIB)
- SET(ARROW_PRIVATE_LINK_LIBS zlib ${ARROW_PRIVATE_LINK_LIBS})
- endif()
- SET(ARROW_STATIC_LINK_LIBS zlib ${ARROW_STATIC_LINK_LIBS})
+ SET(ARROW_STATIC_LINK_LIBS ${ZLIB_LIBRARY} ${ARROW_STATIC_LINK_LIBS})
endif()
if (ARROW_WITH_ZSTD)
@@ -664,11 +665,10 @@ endif()
if (ARROW_ORC)
SET(ARROW_STATIC_LINK_LIBS
${ARROW_STATIC_LINK_LIBS}
- orc)
+ orc_static)
endif()
if (ARROW_USE_GLOG)
- #add_definitions(-DARROW_USE_GLOG)
SET(ARROW_STATIC_LINK_LIBS glog_static ${ARROW_STATIC_LINK_LIBS})
endif()
@@ -678,10 +678,9 @@ endif()
if (ARROW_BUILD_BENCHMARKS)
set(ARROW_BENCHMARK_LINK_LIBS
- arrow_static
arrow_benchmark_main
- gtest
- ${ARROW_STATIC_LINK_LIBS})
+ arrow_static
+ gtest_static)
endif()
set(ARROW_SHARED_PRIVATE_LINK_LIBS
@@ -690,7 +689,8 @@ set(ARROW_SHARED_PRIVATE_LINK_LIBS
${BOOST_FILESYSTEM_LIBRARY}
${BOOST_REGEX_LIBRARY})
-set(ARROW_STATIC_PRIVATE_LINK_LIBS
+set(ARROW_STATIC_LINK_LIBS
+ ${ARROW_STATIC_LINK_LIBS}
${BOOST_SYSTEM_LIBRARY}
${BOOST_FILESYSTEM_LIBRARY}
${BOOST_REGEX_LIBRARY})
@@ -704,19 +704,18 @@ endif()
if (ARROW_BUILD_STATIC)
set(ARROW_MIN_TEST_LIBS
arrow_static
- ${ARROW_STATIC_LINK_LIBS}
- gtest_main
- gtest)
+ gtest_main_static
+ gtest_static)
else ()
set(ARROW_MIN_TEST_LIBS
arrow_shared
${ARROW_LINK_LIBS}
- double-conversion::double-conversion
+ double-conversion_static
${BOOST_SYSTEM_LIBRARY}
${BOOST_FILESYSTEM_LIBRARY}
${BOOST_REGEX_LIBRARY}
- gtest_main
- gtest)
+ gtest_main_static
+ gtest_static)
endif()
if(NOT MSVC)
@@ -755,10 +754,10 @@ endif(ARROW_JEMALLOC)
if (PTHREAD_LIBRARY)
set(ARROW_LINK_LIBS
${ARROW_LINK_LIBS}
- ${PTHREAD_LIBRARY})
+ pthreadshared)
set(ARROW_STATIC_LINK_LIBS
${ARROW_STATIC_LINK_LIBS}
- ${PTHREAD_LIBRARY})
+ pthreadshared)
endif()
############################################################
diff --git a/cpp/cmake_modules/BuildUtils.cmake b/cpp/cmake_modules/BuildUtils.cmake
index 0cc0baa..37273b2 100644
--- a/cpp/cmake_modules/BuildUtils.cmake
+++ b/cpp/cmake_modules/BuildUtils.cmake
@@ -37,7 +37,7 @@ function(ADD_THIRDPARTY_LIB LIB_NAME)
set_target_properties(${AUG_LIB_NAME}
PROPERTIES INTERFACE_LINK_LIBRARIES "${ARG_DEPS}")
endif()
- message("Added static library dependency ${LIB_NAME}: ${ARG_STATIC_LIB}")
+ message("Added static library dependency ${AUG_LIB_NAME}: ${ARG_STATIC_LIB}")
SET(AUG_LIB_NAME "${LIB_NAME}_shared")
add_library(${AUG_LIB_NAME} SHARED IMPORTED)
@@ -54,11 +54,8 @@ function(ADD_THIRDPARTY_LIB LIB_NAME)
set_target_properties(${AUG_LIB_NAME}
PROPERTIES INTERFACE_LINK_LIBRARIES "${ARG_DEPS}")
endif()
- message("Added shared library dependency ${LIB_NAME}: ${ARG_SHARED_LIB}")
+ message("Added shared library dependency ${AUG_LIB_NAME}: ${ARG_SHARED_LIB}")
elseif(ARG_STATIC_LIB)
- add_library(${LIB_NAME} STATIC IMPORTED)
- set_target_properties(${LIB_NAME}
- PROPERTIES IMPORTED_LOCATION "${ARG_STATIC_LIB}")
SET(AUG_LIB_NAME "${LIB_NAME}_static")
add_library(${AUG_LIB_NAME} STATIC IMPORTED)
set_target_properties(${AUG_LIB_NAME}
@@ -67,33 +64,24 @@ function(ADD_THIRDPARTY_LIB LIB_NAME)
set_target_properties(${AUG_LIB_NAME}
PROPERTIES INTERFACE_LINK_LIBRARIES "${ARG_DEPS}")
endif()
- set_target_properties(${LIB_NAME}
- PROPERTIES INTERFACE_LINK_LIBRARIES "${AUG_LIB_NAME}")
- message("Added static library dependency ${LIB_NAME}: ${ARG_STATIC_LIB}")
+ message("Added static library dependency ${AUG_LIB_NAME}: ${ARG_STATIC_LIB}")
elseif(ARG_SHARED_LIB)
- add_library(${LIB_NAME} SHARED IMPORTED)
SET(AUG_LIB_NAME "${LIB_NAME}_shared")
add_library(${AUG_LIB_NAME} SHARED IMPORTED)
if(WIN32)
# Mark the ”.lib” location as part of a Windows DLL
- set_target_properties(${LIB_NAME}
- PROPERTIES IMPORTED_IMPLIB "${ARG_SHARED_LIB}")
set_target_properties(${AUG_LIB_NAME}
PROPERTIES IMPORTED_IMPLIB "${ARG_SHARED_LIB}")
else()
- set_target_properties(${LIB_NAME}
- PROPERTIES IMPORTED_LOCATION "${ARG_SHARED_LIB}")
set_target_properties(${AUG_LIB_NAME}
PROPERTIES IMPORTED_LOCATION "${ARG_SHARED_LIB}")
endif()
- message("Added shared library dependency ${LIB_NAME}: ${ARG_SHARED_LIB}")
+ message("Added shared library dependency ${AUG_LIB_NAME}: ${ARG_SHARED_LIB}")
if(ARG_DEPS)
set_target_properties(${AUG_LIB_NAME}
PROPERTIES INTERFACE_LINK_LIBRARIES "${ARG_DEPS}")
endif()
- set_target_properties(${LIB_NAME}
- PROPERTIES INTERFACE_LINK_LIBRARIES "${AUG_LIB_NAME}")
else()
message(FATAL_ERROR "No static or shared library provided for ${LIB_NAME}")
endif()
@@ -103,7 +91,13 @@ endfunction()
function(ADD_ARROW_LIB LIB_NAME)
set(options BUILD_SHARED BUILD_STATIC)
set(one_value_args SHARED_LINK_FLAGS)
- set(multi_value_args SOURCES OUTPUTS STATIC_LINK_LIBS STATIC_PRIVATE_LINK_LIBS SHARED_LINK_LIBS SHARED_PRIVATE_LINK_LIBS EXTRA_INCLUDES DEPENDENCIES)
+ set(multi_value_args SOURCES OUTPUTS
+ STATIC_LINK_LIBS
+ SHARED_LINK_LIBS
+ SHARED_PRIVATE_LINK_LIBS
+ EXTRA_INCLUDES
+ PRIVATE_INCLUDES
+ DEPENDENCIES)
cmake_parse_arguments(ARG "${options}" "${one_value_args}" "${multi_value_args}" ${ARGN})
if(ARG_UNPARSED_ARGUMENTS)
message(SEND_ERROR "Error: unrecognized arguments: ${ARG_UNPARSED_ARGUMENTS}")
@@ -157,6 +151,10 @@ function(ADD_ARROW_LIB LIB_NAME)
${ARG_EXTRA_INCLUDES}
)
endif()
+ if (ARG_PRIVATE_INCLUDES)
+ target_include_directories(${LIB_NAME}_objlib PRIVATE
+ ${ARG_PRIVATE_INCLUDES})
+ endif()
endif()
set(RUNTIME_INSTALL_DIR bin)
@@ -177,6 +175,11 @@ function(ADD_ARROW_LIB LIB_NAME)
)
endif()
+ if (ARG_PRIVATE_INCLUDES)
+ target_include_directories(${LIB_NAME}_shared PRIVATE
+ ${ARG_PRIVATE_INCLUDES})
+ endif()
+
if(APPLE)
# On OS X, you can avoid linking at library load time and instead
# expecting that the symbols have been loaded separately. This happens
@@ -245,6 +248,11 @@ function(ADD_ARROW_LIB LIB_NAME)
)
endif()
+ if (ARG_PRIVATE_INCLUDES)
+ target_include_directories(${LIB_NAME}_static PRIVATE
+ ${ARG_PRIVATE_INCLUDES})
+ endif()
+
if (MSVC)
set(LIB_NAME_STATIC ${LIB_NAME}_static)
else()
@@ -257,8 +265,7 @@ function(ADD_ARROW_LIB LIB_NAME)
OUTPUT_NAME ${LIB_NAME_STATIC})
target_link_libraries(${LIB_NAME}_static
- LINK_PUBLIC ${ARG_STATIC_LINK_LIBS}
- LINK_PRIVATE ${ARG_STATIC_PRIVATE_LINK_LIBS})
+ LINK_PUBLIC ${ARG_STATIC_LINK_LIBS})
install(TARGETS ${LIB_NAME}_static
EXPORT ${PROJECT_NAME}-targets
@@ -473,7 +480,6 @@ function(ARROW_TEST_LINK_LIBRARIES REL_TEST_NAME)
target_link_libraries(${TEST_NAME} ${ARGN})
endfunction()
-
############################################################
# Fuzzing
############################################################
diff --git a/cpp/cmake_modules/GandivaBuildUtils.cmake b/cpp/cmake_modules/GandivaBuildUtils.cmake
index fc7bf7b..521d697 100644
--- a/cpp/cmake_modules/GandivaBuildUtils.cmake
+++ b/cpp/cmake_modules/GandivaBuildUtils.cmake
@@ -16,9 +16,9 @@
# under the License.
set(GANDIVA_TEST_LINK_LIBS
- gtest
- gtest_main
- re2)
+ gtest_static
+ gtest_main_static
+ ${RE2_LIBRARY})
if (PTHREAD_LIBRARY)
set(GANDIVA_TEST_LINK_LIBS
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index d323092..76a65b7 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -331,6 +331,8 @@ if (WIN32)
else()
find_library(PTHREAD_LIBRARY pthread)
message(STATUS "Found pthread: ${PTHREAD_LIBRARY}")
+ add_library(pthreadshared SHARED IMPORTED)
+ set_target_properties(pthreadshared PROPERTIES IMPORTED_LOCATION ${PTHREAD_LIBRARY})
endif()
# ----------------------------------------------------------------------
@@ -361,9 +363,9 @@ if (ARROW_BOOST_VENDORED)
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_filesystem${CMAKE_STATIC_LIBRARY_SUFFIX}")
set(BOOST_STATIC_REGEX_LIBRARY
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_regex${CMAKE_STATIC_LIBRARY_SUFFIX}")
- set(BOOST_SYSTEM_LIBRARY "${BOOST_STATIC_SYSTEM_LIBRARY}")
- set(BOOST_FILESYSTEM_LIBRARY "${BOOST_STATIC_FILESYSTEM_LIBRARY}")
- set(BOOST_REGEX_LIBRARY "${BOOST_STATIC_REGEX_LIBRARY}")
+ set(BOOST_SYSTEM_LIBRARY boost_system_static)
+ set(BOOST_FILESYSTEM_LIBRARY boost_filesystem_static)
+ set(BOOST_REGEX_LIBRARY boost_regex_static)
if (ARROW_BOOST_HEADER_ONLY)
set(BOOST_BUILD_PRODUCTS)
set(BOOST_CONFIGURE_COMMAND "")
@@ -470,7 +472,7 @@ if (NOT ARROW_BOOST_HEADER_ONLY)
STATIC_LIB "${BOOST_STATIC_REGEX_LIBRARY}"
SHARED_LIB "${BOOST_SHARED_REGEX_LIBRARY}")
- SET(ARROW_BOOST_LIBS boost_system boost_filesystem)
+ SET(ARROW_BOOST_LIBS ${BOOST_SYSTEM_LIBRARY} ${BOOST_FILESYSTEM_LIBRARY})
endif()
include_directories(SYSTEM ${Boost_INCLUDE_DIR})
@@ -503,10 +505,16 @@ endif()
include_directories(SYSTEM ${DOUBLE_CONVERSION_INCLUDE_DIR})
+add_library(double-conversion INTERFACE)
if (DOUBLE_CONVERSION_VENDORED)
- ADD_THIRDPARTY_LIB(double-conversion::double-conversion
+ ADD_THIRDPARTY_LIB(double-conversion
STATIC_LIB ${DOUBLE_CONVERSION_STATIC_LIB})
add_dependencies(arrow_dependencies double-conversion_ep)
+ set_target_properties(double-conversion
+ PROPERTIES INTERFACE_LINK_LIBRARIES double-conversion_static)
+else()
+ set_target_properties(double-conversion
+ PROPERTIES INTERFACE_LINK_LIBRARIES double-conversion::double-conversion)
endif()
# ----------------------------------------------------------------------
@@ -557,8 +565,8 @@ if(ARROW_BUILD_TESTS OR ARROW_BUILD_BENCHMARKS)
STATIC_LIB ${GTEST_MAIN_STATIC_LIB})
if(GTEST_VENDORED)
- add_dependencies(gtest googletest_ep)
- add_dependencies(gtest_main googletest_ep)
+ add_dependencies(gtest_static googletest_ep)
+ add_dependencies(gtest_main_static googletest_ep)
endif()
# gflags (formerly Googleflags) command line parsing
@@ -603,13 +611,13 @@ if(ARROW_BUILD_TESTS OR ARROW_BUILD_BENCHMARKS)
ADD_THIRDPARTY_LIB(gflags
STATIC_LIB ${GFLAGS_STATIC_LIB})
if(MSVC)
- set_target_properties(gflags
+ set_target_properties(gflags_static
PROPERTIES
INTERFACE_LINK_LIBRARIES "shlwapi.lib")
endif()
if(GFLAGS_VENDORED)
- add_dependencies(gflags gflags_ep)
+ add_dependencies(gflags_static gflags_ep)
endif()
endif()
@@ -655,7 +663,7 @@ if(ARROW_BUILD_BENCHMARKS)
STATIC_LIB ${GBENCHMARK_STATIC_LIB})
if(GBENCHMARK_VENDORED)
- add_dependencies(benchmark gbenchmark_ep)
+ add_dependencies(benchmark_static gbenchmark_ep)
endif()
endif()
@@ -815,6 +823,7 @@ if (ARROW_WITH_ZLIB)
endif()
if(ZLIB_FOUND)
ADD_THIRDPARTY_LIB(zlib SHARED_LIB ${ZLIB_SHARED_LIB})
+ set(ZLIB_LIBRARY zlib_shared)
else()
set(ZLIB_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/zlib_ep/src/zlib_ep-install")
set(ZLIB_HOME "${ZLIB_PREFIX}")
@@ -837,13 +846,14 @@ if (ARROW_WITH_ZLIB)
-DBUILD_SHARED_LIBS=OFF)
ADD_THIRDPARTY_LIB(zlib
STATIC_LIB ${ZLIB_STATIC_LIB})
+ set(ZLIB_LIBRARY zlib_static)
ExternalProject_Add(zlib_ep
URL ${ZLIB_SOURCE_URL}
${EP_LOG_OPTIONS}
BUILD_BYPRODUCTS "${ZLIB_STATIC_LIB}"
CMAKE_ARGS ${ZLIB_CMAKE_ARGS})
- add_dependencies(zlib zlib_ep)
+ add_dependencies(${ZLIB_LIBRARY} zlib_ep)
endif()
include_directories(SYSTEM ${ZLIB_INCLUDE_DIR})
@@ -915,7 +925,7 @@ if (ARROW_WITH_SNAPPY)
STATIC_LIB ${SNAPPY_STATIC_LIB})
if (SNAPPY_VENDORED)
- add_dependencies(snappy snappy_ep)
+ add_dependencies(snappy_static snappy_ep)
endif()
endif()
@@ -974,9 +984,9 @@ if (ARROW_WITH_BROTLI)
STATIC_LIB ${BROTLI_STATIC_LIBRARY_COMMON})
if (BROTLI_VENDORED)
- add_dependencies(brotli_enc brotli_ep)
- add_dependencies(brotli_dec brotli_ep)
- add_dependencies(brotli_common brotli_ep)
+ add_dependencies(brotli_enc_static brotli_ep)
+ add_dependencies(brotli_dec_static brotli_ep)
+ add_dependencies(brotli_common_static brotli_ep)
endif()
endif()
@@ -991,7 +1001,7 @@ if (ARROW_WITH_BZ2)
endif()
include_directories(SYSTEM ${BZ2_INCLUDE_DIR})
- ADD_THIRDPARTY_LIB(bz2_static
+ ADD_THIRDPARTY_LIB(bz2
STATIC_LIB ${BZ2_STATIC_LIB})
endif()
@@ -1040,7 +1050,7 @@ if (ARROW_WITH_LZ4)
endif()
include_directories(SYSTEM ${LZ4_INCLUDE_DIR})
- ADD_THIRDPARTY_LIB(lz4_static
+ ADD_THIRDPARTY_LIB(lz4
STATIC_LIB ${LZ4_STATIC_LIB})
if (LZ4_VENDORED)
@@ -1093,7 +1103,7 @@ if (ARROW_WITH_ZSTD)
endif()
include_directories(SYSTEM ${ZSTD_INCLUDE_DIR})
- ADD_THIRDPARTY_LIB(zstd_static
+ ADD_THIRDPARTY_LIB(zstd
STATIC_LIB ${ZSTD_STATIC_LIB})
if (ZSTD_VENDORED)
@@ -1132,10 +1142,12 @@ if (ARROW_GANDIVA)
if (ARROW_RE2_LINKAGE STREQUAL "shared")
ADD_THIRDPARTY_LIB(re2
- STATIC_LIB ${RE2_SHARED_LIB})
+ SHARED_LIB ${RE2_SHARED_LIB})
+ set(RE2_LIBRARY re2_shared)
else()
ADD_THIRDPARTY_LIB(re2
STATIC_LIB ${RE2_STATIC_LIB})
+ set(RE2_LIBRARY re2_static)
endif()
if (RE2_VENDORED)
@@ -1172,14 +1184,15 @@ if (ARROW_ORC OR ARROW_FLIGHT OR ARROW_GANDIVA)
include_directories (SYSTEM ${PROTOBUF_INCLUDE_DIR})
if (ARROW_PROTOBUF_USE_SHARED)
ADD_THIRDPARTY_LIB(protobuf
- SHARED_LIB ${PROTOBUF_LIBRARY})
+ SHARED_LIB ${PROTOBUF_SHARED_LIB})
+ set(PROTOBUF_LIBRARY protobuf_shared)
else ()
ADD_THIRDPARTY_LIB(protobuf
STATIC_LIB ${PROTOBUF_STATIC_LIB})
+ set(PROTOBUF_LIBRARY protobuf_static)
endif ()
-
if (PROTOBUF_VENDORED)
- add_dependencies (protobuf protobuf_ep)
+ add_dependencies (${PROTOBUF_LIBRARY} protobuf_ep)
endif ()
endif()
@@ -1283,15 +1296,15 @@ if (ARROW_ORC)
${EP_LOG_OPTIONS})
set(ORC_VENDORED 1)
- add_dependencies(orc_ep zlib)
+ add_dependencies(orc_ep ${ZLIB_LIBRARY})
if (LZ4_VENDORED)
add_dependencies(orc_ep lz4_static)
endif()
if (SNAPPY_VENDORED)
- add_dependencies(orc_ep snappy)
+ add_dependencies(orc_ep snappy_static)
endif()
if (PROTOBUF_VENDORED)
- add_dependencies(orc_ep protobuf_ep)
+ add_dependencies(orc_ep ${PROTOBUF_LIBRARY})
endif()
else()
set(ORC_INCLUDE_DIR "${ORC_HOME}/include")
@@ -1302,10 +1315,10 @@ if (ARROW_ORC)
include_directories(SYSTEM ${ORC_INCLUDE_DIR})
ADD_THIRDPARTY_LIB(orc
STATIC_LIB ${ORC_STATIC_LIB}
- DEPS protobuf)
+ DEPS ${PROTOBUF_LIBRARY})
if (ORC_VENDORED)
- add_dependencies(orc orc_ep)
+ add_dependencies(orc_static orc_ep)
endif()
endif()
@@ -1372,7 +1385,7 @@ if (NOT THRIFT_FOUND)
set(THRIFT_CMAKE_ARGS "-DZLIB_LIBRARY=${ZLIB_STATIC_LIB}"
${THRIFT_CMAKE_ARGS})
endif()
- set(THRIFT_DEPENDENCIES ${THRIFT_DEPENDENCIES} zlib)
+ set(THRIFT_DEPENDENCIES ${THRIFT_DEPENDENCIES} ${ZLIB_LIBRARY})
if (MSVC)
set(WINFLEXBISON_VERSION 2.4.9)
@@ -1478,7 +1491,7 @@ if (ARROW_USE_GLOG)
message(STATUS "Glog static library: ${GLOG_STATIC_LIB}")
include_directories(SYSTEM ${GLOG_INCLUDE_DIR})
- ADD_THIRDPARTY_LIB(glog_static
+ ADD_THIRDPARTY_LIB(glog
STATIC_LIB ${GLOG_STATIC_LIB})
if (GLOG_VENDORED)
diff --git a/cpp/src/arrow/CMakeLists.txt b/cpp/src/arrow/CMakeLists.txt
index 7fb083c..cec6088 100644
--- a/cpp/src/arrow/CMakeLists.txt
+++ b/cpp/src/arrow/CMakeLists.txt
@@ -167,9 +167,7 @@ ADD_ARROW_LIB(arrow
SHARED_LINK_FLAGS ${ARROW_SHARED_LINK_FLAGS}
SHARED_LINK_LIBS ${ARROW_LINK_LIBS}
SHARED_PRIVATE_LINK_LIBS ${ARROW_SHARED_PRIVATE_LINK_LIBS}
- STATIC_LINK_LIBS ${ARROW_STATIC_LINK_LIBS}
- STATIC_PRIVATE_LINK_LIBS ${ARROW_STATIC_PRIVATE_LINK_LIBS}
-)
+ STATIC_LINK_LIBS ${ARROW_STATIC_LINK_LIBS})
find_package(Backtrace)
diff --git a/cpp/src/arrow/flight/CMakeLists.txt b/cpp/src/arrow/flight/CMakeLists.txt
index e830be3..bc22d60 100644
--- a/cpp/src/arrow/flight/CMakeLists.txt
+++ b/cpp/src/arrow/flight/CMakeLists.txt
@@ -94,8 +94,8 @@ if (ARROW_BUILD_TESTS OR ARROW_BUILD_BENCHMARKS)
target_link_libraries(flight-test-server
arrow_flight_static
${ARROW_FLIGHT_STATIC_LINK_LIBS}
- gflags
- gtest)
+ gflags_static
+ gtest_static)
# This is needed for the unit tests
if (ARROW_BUILD_TESTS)
@@ -123,8 +123,8 @@ if (ARROW_BUILD_BENCHMARKS)
target_link_libraries(flight-perf-server
arrow_flight_static
${ARROW_FLIGHT_STATIC_LINK_LIBS}
- gflags
- gtest)
+ gflags_static
+ gtest_static)
add_executable(flight-benchmark
flight-benchmark.cc
@@ -132,8 +132,8 @@ if (ARROW_BUILD_BENCHMARKS)
target_link_libraries(flight-benchmark
arrow_flight_static
${ARROW_FLIGHT_STATIC_LINK_LIBS}
- gflags
- gtest)
+ gflags_static
+ gtest_static)
add_dependencies(flight-benchmark flight-perf-server)
endif(ARROW_BUILD_BENCHMARKS)
diff --git a/cpp/src/arrow/gpu/CMakeLists.txt b/cpp/src/arrow/gpu/CMakeLists.txt
index 465977a..ed4c125 100644
--- a/cpp/src/arrow/gpu/CMakeLists.txt
+++ b/cpp/src/arrow/gpu/CMakeLists.txt
@@ -93,6 +93,6 @@ if (ARROW_BUILD_BENCHMARKS)
cuda_add_executable(cuda-benchmark cuda-benchmark.cc)
target_link_libraries(cuda-benchmark
arrow_gpu_shared
- gtest
+ gtest_static
${ARROW_BENCHMARK_LINK_LIBS})
endif()
diff --git a/cpp/src/arrow/ipc/CMakeLists.txt b/cpp/src/arrow/ipc/CMakeLists.txt
index b7a90bc..13ed9b9 100644
--- a/cpp/src/arrow/ipc/CMakeLists.txt
+++ b/cpp/src/arrow/ipc/CMakeLists.txt
@@ -24,7 +24,7 @@ ADD_ARROW_TEST(ipc-json-test)
if (NOT ARROW_BOOST_HEADER_ONLY)
ADD_ARROW_TEST(json-integration-test
- EXTRA_LINK_LIBS gflags)
+ EXTRA_LINK_LIBS gflags_static)
# Test is being built
if (TARGET json-integration-test)
diff --git a/cpp/src/arrow/python/CMakeLists.txt b/cpp/src/arrow/python/CMakeLists.txt
index 0e55ee4..edfe4e3 100644
--- a/cpp/src/arrow/python/CMakeLists.txt
+++ b/cpp/src/arrow/python/CMakeLists.txt
@@ -129,7 +129,7 @@ if (ARROW_BUILD_TESTS)
util/test_main.cc)
target_link_libraries(arrow_python_test_main
- gtest)
+ gtest_static)
target_include_directories(arrow_python_test_main SYSTEM PUBLIC
${ARROW_PYTHON_INCLUDES})
diff --git a/cpp/src/arrow/python/util/CMakeLists.txt b/cpp/src/arrow/python/util/CMakeLists.txt
index 4cc20f6..8edde12 100644
--- a/cpp/src/arrow/python/util/CMakeLists.txt
+++ b/cpp/src/arrow/python/util/CMakeLists.txt
@@ -25,13 +25,13 @@ if (PYARROW_BUILD_TESTS)
if (APPLE)
target_link_libraries(arrow/python_test_main
- gtest
+ gtest_static
dl)
set_target_properties(arrow/python_test_main
PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
else()
target_link_libraries(arrow/python_test_main
- gtest
+ gtest_static
pthread
dl
)
diff --git a/cpp/src/arrow/util/CMakeLists.txt b/cpp/src/arrow/util/CMakeLists.txt
index b9d3762..855ff6a 100644
--- a/cpp/src/arrow/util/CMakeLists.txt
+++ b/cpp/src/arrow/util/CMakeLists.txt
@@ -65,22 +65,22 @@ if (ARROW_BUILD_BENCHMARKS)
add_library(arrow_benchmark_main benchmark_main.cc)
if (APPLE)
target_link_libraries(arrow_benchmark_main
- benchmark
+ benchmark_static
)
elseif(MSVC)
target_link_libraries(arrow_benchmark_main
- benchmark
+ benchmark_static
Shlwapi.lib
)
else()
target_link_libraries(arrow_benchmark_main
- benchmark
+ benchmark_static
pthread
)
endif()
# TODO(wesm): Some benchmarks include gtest.h
- add_dependencies(arrow_benchmark_main gtest)
+ add_dependencies(arrow_benchmark_main gtest_static)
endif()
ADD_ARROW_TEST(bit-util-test)
diff --git a/cpp/src/gandiva/CMakeLists.txt b/cpp/src/gandiva/CMakeLists.txt
index 6c227ba..853e70d 100644
--- a/cpp/src/gandiva/CMakeLists.txt
+++ b/cpp/src/gandiva/CMakeLists.txt
@@ -61,22 +61,27 @@ set(SRC_FILES annotator.cc
${SHARED_HELPER_FILES}
${BC_FILE_PATH_CC})
-set(GANDIVA_PRIVATE_LINK_LIBS
- boost_regex
- boost_system
- boost_filesystem
+set(GANDIVA_SHARED_PRIVATE_LINK_LIBS
+ arrow_shared
+ ${BOOST_REGEX_LIBRARY}
+ ${BOOST_SYSTEM_LIBRARY}
+ ${BOOST_FILESYSTEM_LIBRARY}
LLVM::LLVM_INTERFACE
- re2)
-set(GANDIVA_SHARED_PRIVATE_LINK_LIBS ${GANDIVA_PRIVATE_LINK_LIBS})
-set(GANDIVA_STATIC_PRIVATE_LINK_LIBS ${GANDIVA_PRIVATE_LINK_LIBS})
+ ${RE2_LIBRARY})
+
+set(GANDIVA_STATIC_LINK_LIBS
+ arrow_static
+ LLVM::LLVM_INTERFACE
+ ${RE2_LIBRARY})
+
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
- set(GANDIVA_STATIC_PRIVATE_LINK_LIBS
- ${GANDIVA_STATIC_PRIVATE_LINK_LIBS}
+ set(GANDIVA_STATIC_LINK_LIBS
+ ${GANDIVA_STATIC_LINK_LIBS}
-static-libstdc++
-static-libgcc)
endif()
-add_arrow_lib(gandiva
+ADD_ARROW_LIB(gandiva
SOURCES ${SRC_FILES}
OUTPUTS GANDIVA_LIBRARIES
DEPENDENCIES arrow_dependencies
@@ -84,8 +89,7 @@ add_arrow_lib(gandiva
$<TARGET_PROPERTY:LLVM::LLVM_INTERFACE,INTERFACE_INCLUDE_DIRECTORIES>
SHARED_LINK_LIBS arrow_shared
SHARED_PRIVATE_LINK_LIBS ${GANDIVA_SHARED_PRIVATE_LINK_LIBS}
- STATIC_LINK_LIBS arrow_static
- STATIC_PRIVATE_LINK_LIBS ${GANDIVA_STATIC_PRIVATE_LINK_LIBS})
+ STATIC_LINK_LIBS ${GANDIVA_STATIC_LINK_LIBS})
# install for gandiva
include(GNUInstallDirs)
diff --git a/cpp/src/gandiva/jni/CMakeLists.txt b/cpp/src/gandiva/jni/CMakeLists.txt
index 090937a..8684fe8 100644
--- a/cpp/src/gandiva/jni/CMakeLists.txt
+++ b/cpp/src/gandiva/jni/CMakeLists.txt
@@ -31,7 +31,7 @@ get_filename_component(ABS_GANDIVA_PROTO ${CMAKE_SOURCE_DIR}/src/gandiva/proto/T
add_custom_command(
OUTPUT ${PROTO_OUTPUT_FILES}
COMMAND ${PROTOBUF_EXECUTABLE} --proto_path ${CMAKE_SOURCE_DIR}/src/gandiva/proto --cpp_out ${PROTO_OUTPUT_DIR} ${CMAKE_SOURCE_DIR}/src/gandiva/proto/Types.proto
- DEPENDS ${ABS_GANDIVA_PROTO} protobuf
+ DEPENDS ${ABS_GANDIVA_PROTO} ${PROTOBUF_LIBRARY}
COMMENT "Running PROTO compiler on Types.proto"
VERBATIM
)
@@ -44,40 +44,34 @@ set(PROTO_HDRS "${PROTO_OUTPUT_DIR}/Types.pb.h")
set(JNI_HEADERS_DIR "${CMAKE_CURRENT_BINARY_DIR}/java")
add_subdirectory(../../../../java/gandiva ./java/gandiva)
-add_library(gandiva_jni SHARED
- config_builder.cc
+set(GANDIVA_LINK_LIBS
+ ${PROTOBUF_LIBRARY}
+ gandiva_static)
+
+set(GANDIVA_JNI_SOURCES config_builder.cc
config_holder.cc
expression_registry_helper.cc
jni_common.cc
${PROTO_SRCS})
-add_dependencies(gandiva_jni gandiva_java gandiva_jni_proto)
# For users of gandiva_jni library (including integ tests), include-dir is :
# /usr/**/include dir after install,
# cpp/include during build
# For building gandiva_jni library itself, include-dir (in addition to above) is :
# cpp/src
-target_include_directories(gandiva_jni
- PUBLIC
- $<INSTALL_INTERFACE:include>
- $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
- ${JNI_HEADERS_DIR}
- PRIVATE
- ${JNI_INCLUDE_DIRS}
- ${CMAKE_CURRENT_BINARY_DIR}
- ${CMAKE_SOURCE_DIR}/src
-)
+ADD_ARROW_LIB(gandiva_jni
+ SOURCES ${GANDIVA_JNI_SOURCES}
+ SHARED_PRIVATE_LINK_LIBS ${GANDIVA_LINK_LIBS}
+ STATIC_LINK_LIBS ${GANDIVA_LINK_LIBS}
+ DEPENDENCIES gandiva_java gandiva_jni_proto
+ EXTRA_INCLUDES $<INSTALL_INTERFACE:include>
+ $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
+ ${JNI_HEADERS_DIR}
+ PRIVATE_INCLUDES ${JNI_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR})
# filter out everything that is not needed for the jni bridge
# statically linked stdc++ has conflicts with stdc++ loaded by other libraries.
if (NOT APPLE)
-set_target_properties(gandiva_jni PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_SOURCE_DIR}/src/gandiva/jni/symbols.map")
+ set_target_properties(gandiva_jni_shared PROPERTIES
+ LINK_FLAGS "-Wl,--version-script=${CMAKE_SOURCE_DIR}/src/gandiva/jni/symbols.map")
endif()
-
-# PROTOBUF is a private dependency i.e users of gandiva also will not have a
-# dependency on protobuf.
-target_link_libraries(gandiva_jni
- PRIVATE
- protobuf
- gandiva_static
-)
diff --git a/cpp/src/parquet/CMakeLists.txt b/cpp/src/parquet/CMakeLists.txt
index fd55488..6070cfb 100644
--- a/cpp/src/parquet/CMakeLists.txt
+++ b/cpp/src/parquet/CMakeLists.txt
@@ -55,25 +55,25 @@ endfunction()
# TODO(wesm): Handling of ABI/SO version
-if ("${PARQUET_ARROW_LINKAGE}" STREQUAL "shared")
- set(PARQUET_ARROW_LINK_LIBS
- arrow_shared)
+if (ARROW_BUILD_STATIC)
+ set(PARQUET_STATIC_LINK_LIBS
+ arrow_static)
+ set(ARROW_LIBRARY_TESTING arrow_static)
else()
- set(PARQUET_ARROW_LINK_LIBS
- arrow_static
- ${ARROW_STATIC_LINK_LIBS})
+ set(ARROW_LIBRARY_TESTING arrow_shared)
endif()
set(PARQUET_BOOST_LINK_LIBS
- boost_regex)
+ ${BOOST_REGEX_LIBRARY})
+
if(MSVC)
set(PARQUET_BOOST_LINK_LIBS ${PARQUET_BOOST_LINK_LIBS}
- boost_system)
+ ${BOOST_SYSTEM_LIBRARY})
endif()
set(PARQUET_MIN_TEST_LIBS
- gtest_main
- gtest)
+ gtest_main_static
+ gtest_static)
if (APPLE)
set(PARQUET_MIN_TEST_LIBS
@@ -88,15 +88,13 @@ endif()
set(PARQUET_SHARED_TEST_LINK_LIBS
${PARQUET_MIN_TEST_LIBS}
- ${PARQUET_ARROW_LINK_LIBS}
parquet_shared
thriftstatic)
set(PARQUET_STATIC_TEST_LINK_LIBS
${PARQUET_MIN_TEST_LIBS}
- ${PARQUET_ARROW_LINK_LIBS}
- parquet_static
- thriftstatic)
+ ${ARROW_LIBRARY_TESTING}
+ parquet_static)
############################################################
# Generated Thrift sources
@@ -158,18 +156,30 @@ add_custom_target(parquet-thrift-deps ALL
set(PARQUET_DEPENDENCIES ${PARQUET_DEPENDENCIES} parquet-thrift-deps)
if (NOT PARQUET_MINIMAL_DEPENDENCY)
+ set(PARQUET_SHARED_LINK_LIBS
+ arrow_shared)
+
# These are libraries that we will link privately with parquet_shared (as they
-# do not need to be linked transitively by other linkers), but publicly with
-# parquet_static (because internal users need to transitively link all
-# dependencies)
- set(PARQUET_INTERFACE_LINK_LIBS
- ${PARQUET_ARROW_LINK_LIBS}
+# do not need to be linked transitively by other linkers)
+ set(PARQUET_SHARED_PRIVATE_LINK_LIBS
${PARQUET_BOOST_LINK_LIBS}
thriftstatic
)
+
+# Link publicly with # parquet_static (because internal users need to
+# transitively link all dependencies)
+ set(PARQUET_STATIC_LINK_LIBS
+ ${PARQUET_STATIC_LINK_LIBS}
+ ${PARQUET_BOOST_LINK_LIBS}
+ thriftstatic
+ )
+
# Although we don't link parquet_objlib against anything, we need it to depend
# on these libs as we may generate their headers via ExternalProject_Add
- set(PARQUET_DEPENDENCIES ${PARQUET_DEPENDENCIES} ${PARQUET_INTERFACE_LINK_LIBS})
+set(PARQUET_DEPENDENCIES ${PARQUET_DEPENDENCIES}
+ ${PARQUET_SHARED_LINK_LIBS}
+ ${PARQUET_SHARED_PRIVATE_LINK_LIBS}
+ ${PARQUET_STATIC_LINK_LIBS})
endif()
if(NOT APPLE AND NOT MSVC)
@@ -193,16 +203,13 @@ ADD_ARROW_LIB(parquet
OUTPUTS PARQUET_LIBRARIES
DEPENDENCIES ${PARQUET_DEPENDENCIES}
SHARED_LINK_FLAGS ${PARQUET_SHARED_LINK_FLAGS}
- SHARED_PRIVATE_LINK_LIBS ${PARQUET_INTERFACE_LINK_LIBS}
- STATIC_LINK_LIBS ${PARQUET_INTERFACE_LINK_LIBS}
+ SHARED_LINK_LIBS ${PARQUET_SHARED_LINK_LIBS}
+ SHARED_PRIVATE_LINK_LIBS ${PARQUET_SHARED_PRIVATE_LINK_LIBS}
+ STATIC_LINK_LIBS ${PARQUET_STATIC_LINK_LIBS}
)
# Thrift requires these definitions for some types that we use
foreach(LIB_TARGET ${PARQUET_LIBRARIES})
- if ("${PARQUET_ARROW_LINKAGE}" STREQUAL "static")
- target_compile_definitions(${LIB_TARGET}
- PRIVATE ARROW_STATIC)
- endif()
target_compile_definitions(${LIB_TARGET}
PRIVATE PARQUET_EXPORTING
PRIVATE HAVE_INTTYPES_H
@@ -283,9 +290,7 @@ ADD_PARQUET_TEST(schema-test USE_STATIC_LINKING)
set(PARQUET_BENCHMARK_LINK_LIBRARIES
arrow_benchmark_main
- parquet_static
- arrow_static
- thriftstatic)
+ parquet_static)
ADD_ARROW_BENCHMARK(column-io-benchmark)
ARROW_BENCHMARK_LINK_LIBRARIES(column-io-benchmark