mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-24 04:37:20 +08:00
[arrow] Update Arrow to 9.0.0 (#26187)
* update patches * fix parquet * format * add xsimd dep * update version * cuda fix * update version
This commit is contained in:
parent
a9a23172a7
commit
cd5e7946ad
61
ports/arrow/cuda-ptr.patch
Normal file
61
ports/arrow/cuda-ptr.patch
Normal file
@ -0,0 +1,61 @@
|
||||
diff --git a/cpp/src/arrow/gpu/cuda_context.h b/cpp/src/arrow/gpu/cuda_context.h
|
||||
index 00bcf94c8..0115ed19a 100644
|
||||
--- a/cpp/src/arrow/gpu/cuda_context.h
|
||||
+++ b/cpp/src/arrow/gpu/cuda_context.h
|
||||
@@ -76,7 +76,7 @@ class ARROW_EXPORT CudaDeviceManager {
|
||||
static std::unique_ptr<CudaDeviceManager> instance_;
|
||||
|
||||
class Impl;
|
||||
- std::unique_ptr<Impl> impl_;
|
||||
+ std::shared_ptr<Impl> impl_;
|
||||
|
||||
friend class CudaContext;
|
||||
friend class CudaDevice;
|
||||
@@ -146,7 +146,7 @@ class ARROW_EXPORT CudaDevice : public Device {
|
||||
/// \endcond
|
||||
|
||||
explicit CudaDevice(Impl);
|
||||
- std::unique_ptr<Impl> impl_;
|
||||
+ std::shared_ptr<Impl> impl_;
|
||||
};
|
||||
|
||||
/// \brief Return whether a device instance is a CudaDevice
|
||||
@@ -297,7 +297,7 @@ class ARROW_EXPORT CudaContext : public std::enable_shared_from_this<CudaContext
|
||||
uintptr_t dst, uintptr_t src, int64_t nbytes);
|
||||
|
||||
class Impl;
|
||||
- std::unique_ptr<Impl> impl_;
|
||||
+ std::shared_ptr<Impl> impl_;
|
||||
|
||||
friend class CudaBuffer;
|
||||
friend class CudaBufferReader;
|
||||
diff --git a/cpp/src/arrow/gpu/cuda_internal.h b/cpp/src/arrow/gpu/cuda_internal.h
|
||||
index 25eb6e06c..d70873634 100644
|
||||
--- a/cpp/src/arrow/gpu/cuda_internal.h
|
||||
+++ b/cpp/src/arrow/gpu/cuda_internal.h
|
||||
@@ -33,6 +33,7 @@ namespace internal {
|
||||
|
||||
std::string CudaErrorDescription(CUresult err);
|
||||
|
||||
+ARROW_EXPORT
|
||||
Status StatusFromCuda(CUresult res, const char* function_name = nullptr);
|
||||
|
||||
#define CU_RETURN_NOT_OK(FUNC_NAME, STMT) \
|
||||
diff --git a/cpp/src/arrow/gpu/cuda_memory.h b/cpp/src/arrow/gpu/cuda_memory.h
|
||||
index 4efd38894..18c23a507 100644
|
||||
--- a/cpp/src/arrow/gpu/cuda_memory.h
|
||||
+++ b/cpp/src/arrow/gpu/cuda_memory.h
|
||||
@@ -250,10 +250,12 @@ Result<std::shared_ptr<CudaHostBuffer>> AllocateCudaHostBuffer(int device_number
|
||||
const int64_t size);
|
||||
|
||||
/// Low-level: get a device address through which the CPU data be accessed.
|
||||
+ARROW_EXPORT
|
||||
Result<uintptr_t> GetDeviceAddress(const uint8_t* cpu_data,
|
||||
const std::shared_ptr<CudaContext>& ctx);
|
||||
|
||||
/// Low-level: get a CPU address through which the device data be accessed.
|
||||
+ARROW_EXPORT
|
||||
Result<uint8_t*> GetHostAddress(uintptr_t device_ptr);
|
||||
|
||||
} // namespace cuda
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
|
||||
index 7d9c5c7..33afd70 100644
|
||||
index bca86d4c1..52f87aa97 100644
|
||||
--- a/cpp/CMakeLists.txt
|
||||
+++ b/cpp/CMakeLists.txt
|
||||
@@ -705,7 +705,7 @@ endif()
|
||||
@@ -737,7 +737,7 @@ endif()
|
||||
|
||||
if(ARROW_WITH_BROTLI)
|
||||
# Order is important for static linking
|
||||
@ -11,19 +11,7 @@ index 7d9c5c7..33afd70 100644
|
||||
list(APPEND ARROW_LINK_LIBS ${ARROW_BROTLI_LIBS})
|
||||
list(APPEND ARROW_STATIC_LINK_LIBS ${ARROW_BROTLI_LIBS})
|
||||
if(Brotli_SOURCE STREQUAL "SYSTEM")
|
||||
@@ -721,9 +721,9 @@ if(ARROW_WITH_BZ2)
|
||||
endif()
|
||||
|
||||
if(ARROW_WITH_LZ4)
|
||||
- list(APPEND ARROW_STATIC_LINK_LIBS LZ4::lz4)
|
||||
+ list(APPEND ARROW_STATIC_LINK_LIBS lz4::lz4)
|
||||
if(Lz4_SOURCE STREQUAL "SYSTEM")
|
||||
- list(APPEND ARROW_STATIC_INSTALL_INTERFACE_LIBS LZ4::lz4)
|
||||
+ list(APPEND ARROW_STATIC_INSTALL_INTERFACE_LIBS lz4::lz4)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -793,10 +793,10 @@ if(ARROW_WITH_OPENTELEMETRY)
|
||||
@@ -825,10 +825,10 @@ if(ARROW_WITH_OPENTELEMETRY)
|
||||
endif()
|
||||
|
||||
if(ARROW_WITH_UTF8PROC)
|
||||
@ -38,7 +26,7 @@ index 7d9c5c7..33afd70 100644
|
||||
endif()
|
||||
|
||||
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
|
||||
index f070323..290b5a7 100644
|
||||
index 5d1da18b7..9c5adf47d 100644
|
||||
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
|
||||
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
|
||||
@@ -53,7 +53,7 @@ set(ARROW_THIRDPARTY_DEPENDENCIES
|
||||
@ -50,35 +38,24 @@ index f070323..290b5a7 100644
|
||||
BZip2
|
||||
c-ares
|
||||
gflags
|
||||
@@ -62,7 +62,7 @@ set(ARROW_THIRDPARTY_DEPENDENCIES
|
||||
gRPC
|
||||
GTest
|
||||
LLVM
|
||||
- Lz4
|
||||
+ lz4
|
||||
nlohmann_json
|
||||
opentelemetry-cpp
|
||||
ORC
|
||||
@@ -72,7 +72,7 @@ set(ARROW_THIRDPARTY_DEPENDENCIES
|
||||
Snappy
|
||||
@@ -74,7 +74,7 @@ set(ARROW_THIRDPARTY_DEPENDENCIES
|
||||
Substrait
|
||||
Thrift
|
||||
ucx
|
||||
- utf8proc
|
||||
+ unofficial-utf8proc
|
||||
xsimd
|
||||
ZLIB
|
||||
zstd)
|
||||
@@ -139,6 +139,9 @@ foreach(DEPENDENCY ${ARROW_THIRDPARTY_DEPENDENCIES})
|
||||
@@ -152,6 +152,7 @@ foreach(DEPENDENCY ${ARROW_THIRDPARTY_DEPENDENCIES})
|
||||
endforeach()
|
||||
|
||||
macro(build_dependency DEPENDENCY_NAME)
|
||||
+ if(NOT "${DEPENDENCY_NAME}" STREQUAL "xsimd")
|
||||
+ message(FATAL_ERROR "dependencies should never be built in vcpkg")
|
||||
+ endif()
|
||||
+ message(FATAL_ERROR "dependencies should never be built in vcpkg")
|
||||
if("${DEPENDENCY_NAME}" STREQUAL "AWSSDK")
|
||||
build_awssdk()
|
||||
elseif("${DEPENDENCY_NAME}" STREQUAL "benchmark")
|
||||
@@ -222,7 +225,7 @@ macro(resolve_dependency DEPENDENCY_NAME)
|
||||
@@ -239,7 +240,7 @@ macro(resolve_dependency DEPENDENCY_NAME)
|
||||
endif()
|
||||
|
||||
if(ARG_HAVE_ALT)
|
||||
@ -87,9 +64,11 @@ index f070323..290b5a7 100644
|
||||
else()
|
||||
set(PACKAGE_NAME ${DEPENDENCY_NAME})
|
||||
endif()
|
||||
@@ -1061,7 +1064,21 @@ endmacro()
|
||||
if(ARROW_WITH_SNAPPY)
|
||||
resolve_dependency(Snappy PC_PACKAGE_NAMES snappy)
|
||||
@@ -1138,8 +1139,23 @@ if(ARROW_WITH_SNAPPY)
|
||||
TRUE
|
||||
PC_PACKAGE_NAMES
|
||||
snappy)
|
||||
+ set(Snappy_TARGET "Snappy::snappy")
|
||||
if(${Snappy_SOURCE} STREQUAL "SYSTEM" AND NOT snappy_PC_FOUND)
|
||||
+ get_target_property(SNAPPY_IMPLIB_DEBUG Snappy::snappy IMPORTED_IMPLIB_DEBUG)
|
||||
+ get_target_property(SNAPPY_LIB_DEBUG Snappy::snappy IMPORTED_LOCATION_DEBUG)
|
||||
@ -104,115 +83,39 @@ index f070323..290b5a7 100644
|
||||
+ elseif(CMAKE_BUILD_TYPE STREQUAL "RELEASE" AND SNAPPY_LIB_RELEASE)
|
||||
+ set(SNAPPY_LIB "${SNAPPY_LIB_RELEASE}")
|
||||
+ else()
|
||||
get_target_property(SNAPPY_LIB Snappy::snappy IMPORTED_LOCATION)
|
||||
get_target_property(SNAPPY_TYPE ${Snappy_TARGET} TYPE)
|
||||
+ endif()
|
||||
string(APPEND ARROW_PC_LIBS_PRIVATE " ${SNAPPY_LIB}")
|
||||
endif()
|
||||
# TODO: Don't use global includes but rather target_include_directories
|
||||
@@ -1129,10 +1132,14 @@ macro(build_brotli)
|
||||
if(NOT SNAPPY_TYPE STREQUAL "INTERFACE_LIBRARY")
|
||||
get_target_property(SNAPPY_LIB ${Snappy_TARGET}
|
||||
IMPORTED_LOCATION_${UPPERCASE_BUILD_TYPE})
|
||||
@@ -1214,7 +1230,8 @@ macro(build_brotli)
|
||||
endmacro()
|
||||
|
||||
if(ARROW_WITH_BROTLI)
|
||||
- resolve_dependency(Brotli PC_PACKAGE_NAMES libbrotlidec libbrotlienc)
|
||||
+ set(Brotli_SOURCE SYSTEM)
|
||||
+ resolve_dependency(unofficial-brotli USE_CONFIG TRUE PC_PACKAGE_NAMES libbrotlidec libbrotlienc)
|
||||
# TODO: Don't use global includes but rather target_include_directories
|
||||
- get_target_property(BROTLI_INCLUDE_DIR Brotli::brotlicommon
|
||||
+ get_target_property(BROTLI_INCLUDE_DIR unofficial::brotli::brotlicommon
|
||||
INTERFACE_INCLUDE_DIRECTORIES)
|
||||
+ if(NOT BROTLI_INCLUDE_DIR)
|
||||
+ get_target_property(BROTLI_INCLUDE_DIR unofficial::brotli::brotlicommon-static INTERFACE_INCLUDE_DIRECTORIES)
|
||||
+ endif()
|
||||
include_directories(SYSTEM ${BROTLI_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
@@ -1434,6 +1446,13 @@ if(ARROW_WITH_THRIFT)
|
||||
# TODO: Don't use global includes but rather target_include_directories
|
||||
include_directories(SYSTEM ${THRIFT_INCLUDE_DIR})
|
||||
|
||||
+ if(THRIFT_INCLUDE_DIR)
|
||||
+ file(READ "${THRIFT_INCLUDE_DIR}/config.h" THRIFT_CONFIG_H_CONTENT)
|
||||
+ string(REGEX MATCH "#define PACKAGE_VERSION \"[0-9.]+\"" THRIFT_VERSION_DEFINITION "${THRIFT_CONFIG_H_CONTENT}")
|
||||
+ string(REGEX MATCH "[0-9.]+" THRIFT_VERSION "${THRIFT_VERSION_DEFINITION}")
|
||||
+ set(THRIFT_VERSION "${THRIFT_VERSION}")
|
||||
+ endif()
|
||||
+
|
||||
string(REPLACE "." ";" VERSION_LIST ${THRIFT_VERSION})
|
||||
list(GET VERSION_LIST 0 THRIFT_VERSION_MAJOR)
|
||||
list(GET VERSION_LIST 1 THRIFT_VERSION_MINOR)
|
||||
@@ -1561,6 +1580,8 @@ if(ARROW_WITH_PROTOBUF)
|
||||
if(PARQUET_REQUIRE_ENCRYPTION AND NOT ARROW_PARQUET)
|
||||
@@ -1646,7 +1663,8 @@ if(ARROW_WITH_PROTOBUF)
|
||||
${ARROW_PROTOBUF_REQUIRED_VERSION}
|
||||
PC_PACKAGE_NAMES
|
||||
protobuf)
|
||||
-
|
||||
+ get_target_property(PROTOBUF_INCLUDE_DIR protobuf::libprotobuf
|
||||
+ INTERFACE_INCLUDE_DIRECTORIES)
|
||||
|
||||
if(NOT Protobuf_USE_STATIC_LIBS AND MSVC_TOOLCHAIN)
|
||||
add_definitions(-DPROTOBUF_USE_DLLS)
|
||||
@@ -2260,10 +2276,11 @@ macro(build_lz4)
|
||||
endmacro()
|
||||
|
||||
if(ARROW_WITH_LZ4)
|
||||
- resolve_dependency(Lz4 PC_PACKAGE_NAMES liblz4)
|
||||
+ set(Lz4_SOURCE SYSTEM)
|
||||
+ resolve_dependency(lz4 USE_CONFIG TRUE PC_PACKAGE_NAMES liblz4)
|
||||
|
||||
# TODO: Don't use global includes but rather target_include_directories
|
||||
- get_target_property(LZ4_INCLUDE_DIR LZ4::lz4 INTERFACE_INCLUDE_DIRECTORIES)
|
||||
+ get_target_property(LZ4_INCLUDE_DIR lz4::lz4 INTERFACE_INCLUDE_DIRECTORIES)
|
||||
include_directories(SYSTEM ${LZ4_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
@@ -2517,9 +2534,8 @@ macro(build_utf8proc)
|
||||
endif()
|
||||
@@ -2599,9 +2617,7 @@ macro(build_utf8proc)
|
||||
endmacro()
|
||||
|
||||
if(ARROW_WITH_UTF8PROC)
|
||||
- resolve_dependency(utf8proc
|
||||
- REQUIRED_VERSION
|
||||
- "2.2.0"
|
||||
+ set(utf8proc_SOURCE SYSTEM)
|
||||
+ resolve_dependency(unofficial-utf8proc
|
||||
PC_PACKAGE_NAMES
|
||||
libutf8proc)
|
||||
|
||||
@@ -2527,7 +2543,7 @@ if(ARROW_WITH_UTF8PROC)
|
||||
|
||||
# TODO: Don't use global definitions but rather
|
||||
# target_compile_definitions or target_link_libraries
|
||||
- get_target_property(UTF8PROC_COMPILER_DEFINITIONS utf8proc::utf8proc
|
||||
+ get_target_property(UTF8PROC_COMPILER_DEFINITIONS utf8proc
|
||||
INTERFACE_COMPILER_DEFINITIONS)
|
||||
if(UTF8PROC_COMPILER_DEFINITIONS)
|
||||
add_definitions(-D${UTF8PROC_COMPILER_DEFINITIONS})
|
||||
@@ -2535,7 +2551,7 @@ if(ARROW_WITH_UTF8PROC)
|
||||
|
||||
# TODO: Don't use global includes but rather
|
||||
# target_include_directories or target_link_libraries
|
||||
- get_target_property(UTF8PROC_INCLUDE_DIR utf8proc::utf8proc
|
||||
+ get_target_property(UTF8PROC_INCLUDE_DIR utf8proc
|
||||
INTERFACE_INCLUDE_DIRECTORIES)
|
||||
include_directories(SYSTEM ${UTF8PROC_INCLUDE_DIR})
|
||||
endif()
|
||||
@@ -3719,6 +3735,9 @@ if(ARROW_WITH_GRPC)
|
||||
# TODO: Don't use global includes but rather target_include_directories
|
||||
get_target_property(GRPC_INCLUDE_DIR gRPC::grpc++ INTERFACE_INCLUDE_DIRECTORIES)
|
||||
include_directories(SYSTEM ${GRPC_INCLUDE_DIR})
|
||||
+ if (ABSL_USE_CXX17)
|
||||
+ set(CMAKE_CXX_STANDARD 17)
|
||||
+ endif()
|
||||
|
||||
if(GRPC_VENDORED)
|
||||
set(GRPCPP_PP_INCLUDE TRUE)
|
||||
diff --git a/cpp/src/arrow/adapters/orc/CMakeLists.txt b/cpp/src/arrow/adapters/orc/CMakeLists.txt
|
||||
index b1b6847..444a45e 100644
|
||||
--- a/cpp/src/arrow/adapters/orc/CMakeLists.txt
|
||||
+++ b/cpp/src/arrow/adapters/orc/CMakeLists.txt
|
||||
@@ -30,7 +30,7 @@ set(ORC_MIN_TEST_LIBS
|
||||
GTest::gtest_main
|
||||
GTest::gtest
|
||||
Snappy::snappy
|
||||
- LZ4::lz4
|
||||
+ lz4::lz4
|
||||
ZLIB::ZLIB)
|
||||
|
||||
if(ARROW_BUILD_STATIC)
|
||||
add_definitions(-DARROW_WITH_UTF8PROC)
|
||||
|
@ -1,14 +1,14 @@
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO apache/arrow
|
||||
REF apache-arrow-8.0.1
|
||||
SHA512 b32f5a3666de7d6d16ea828697bb42e1b6605f58719c42e670c9ec0a8782057dac933f6e14e97b46f82802fc38cc7f4cc825794a4a95ac641593c2ee26ac5bbe
|
||||
REF apache-arrow-9.0.0
|
||||
SHA512 1191793dd56471fb2b402afbe9b31cde4c5126785243e538e42ba95ccd31d523121f07b144461c99a4b7449e611aa5998bd0de95e8e4b0e3c80397499fe746f0
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
vs-2022-fixes.patch
|
||||
cuda-ptr.patch
|
||||
msvc-static-name.patch
|
||||
fix-ThirdPartyToolchain.patch
|
||||
static-link-libs.patch # https://github.com/apache/arrow/pull/13707
|
||||
static-link-libs.patch # https://github.com/apache/arrow/pull/13707 & pull/13863
|
||||
)
|
||||
file(REMOVE "${SOURCE_PATH}/cpp/cmake_modules/Findzstd.cmake"
|
||||
"${SOURCE_PATH}/cpp/cmake_modules/FindBrotli.cmake"
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git a/cpp/src/arrow/CMakeLists.txt b/cpp/src/arrow/CMakeLists.txt
|
||||
index 690c51a..2f7d26b 100644
|
||||
index 93dd1297b..6b04f7d46 100644
|
||||
--- a/cpp/src/arrow/CMakeLists.txt
|
||||
+++ b/cpp/src/arrow/CMakeLists.txt
|
||||
@@ -570,6 +570,7 @@ add_arrow_lib(arrow
|
||||
@@ -581,6 +581,7 @@ add_arrow_lib(arrow
|
||||
${ARROW_SHARED_PRIVATE_LINK_LIBS}
|
||||
STATIC_LINK_LIBS
|
||||
${ARROW_STATIC_LINK_LIBS}
|
||||
@ -10,3 +10,118 @@ index 690c51a..2f7d26b 100644
|
||||
${ARROW_STATIC_INSTALL_INTERFACE_LIBS}
|
||||
SHARED_INSTALL_INTERFACE_LIBS
|
||||
${ARROW_SHARED_INSTALL_INTERFACE_LIBS})
|
||||
|
||||
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
|
||||
index 9e732db80afb..f0c3f30ef3d8 100644
|
||||
--- a/cpp/CMakeLists.txt
|
||||
+++ b/cpp/CMakeLists.txt
|
||||
@@ -822,6 +822,17 @@ if(ARROW_WITH_OPENTELEMETRY)
|
||||
opentelemetry-cpp::trace
|
||||
opentelemetry-cpp::ostream_span_exporter
|
||||
opentelemetry-cpp::otlp_http_exporter)
|
||||
+ if(opentelemetry_SOURCE STREQUAL "SYSTEM")
|
||||
+ list(APPEND
|
||||
+ ARROW_STATIC_INSTALL_INTERFACE_LIBS
|
||||
+ opentelemetry-cpp::trace
|
||||
+ opentelemetry-cpp::ostream_span_exporter
|
||||
+ opentelemetry-cpp::otlp_http_exporter)
|
||||
+ endif()
|
||||
+ if(Protobuf_SOURCE STREQUAL "SYSTEM")
|
||||
+ list(APPEND ARROW_STATIC_INSTALL_INTERFACE_LIBS ${ARROW_PROTOBUF_LIBPROTOBUF})
|
||||
+ endif()
|
||||
+ list(APPEND ARROW_STATIC_INSTALL_INTERFACE_LIBS CURL::libcurl)
|
||||
endif()
|
||||
|
||||
if(ARROW_WITH_UTF8PROC)
|
||||
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
|
||||
index ad8351f9cc6e..5c1dd9d34d12 100644
|
||||
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
|
||||
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
|
||||
@@ -1083,6 +1083,7 @@ endif()
|
||||
macro(find_curl)
|
||||
if(NOT TARGET CURL::libcurl)
|
||||
find_package(CURL REQUIRED)
|
||||
+ list(APPEND ARROW_SYSTEM_DEPENDENCIES CURL)
|
||||
if(NOT TARGET CURL::libcurl)
|
||||
# For CMake 3.11 or older
|
||||
add_library(CURL::libcurl UNKNOWN IMPORTED)
|
||||
@@ -4540,11 +4541,11 @@ macro(build_opentelemetry)
|
||||
|
||||
foreach(_OPENTELEMETRY_LIB ${_OPENTELEMETRY_LIBS})
|
||||
add_dependencies(opentelemetry-cpp::${_OPENTELEMETRY_LIB} opentelemetry_ep)
|
||||
+ list(APPEND ARROW_BUNDLED_STATIC_LIBS opentelemetry-cpp::${_OPENTELEMETRY_LIB})
|
||||
endforeach()
|
||||
|
||||
# Work around https://gitlab.kitware.com/cmake/cmake/issues/15052
|
||||
file(MAKE_DIRECTORY ${OPENTELEMETRY_INCLUDE_DIR})
|
||||
-
|
||||
endmacro()
|
||||
|
||||
if(ARROW_WITH_OPENTELEMETRY)
|
||||
diff --git a/cpp/examples/parquet/parquet_arrow/CMakeLists.txt b/cpp/examples/parquet/parquet_arrow/CMakeLists.txt
|
||||
index 32f980060c95..c89751731575 100644
|
||||
--- a/cpp/examples/parquet/parquet_arrow/CMakeLists.txt
|
||||
+++ b/cpp/examples/parquet/parquet_arrow/CMakeLists.txt
|
||||
@@ -24,7 +24,7 @@ include(ExternalProject)
|
||||
include(FindPkgConfig)
|
||||
include(GNUInstallDirs)
|
||||
|
||||
-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake_modules")
|
||||
+option(PARQUET_LINK_SHARED "Link to the Parquet shared library" ON)
|
||||
|
||||
# This ensures that things like gnu++11 get passed correctly
|
||||
if(NOT DEFINED CMAKE_CXX_STANDARD)
|
||||
@@ -39,4 +39,8 @@ find_package(Arrow REQUIRED)
|
||||
find_package(Parquet REQUIRED)
|
||||
|
||||
add_executable(parquet-arrow-example reader_writer.cc)
|
||||
-target_link_libraries(parquet-arrow-example parquet_shared arrow_shared)
|
||||
+if(PARQUET_LINK_SHARED)
|
||||
+ target_link_libraries(parquet-arrow-example parquet_shared)
|
||||
+else()
|
||||
+ target_link_libraries(parquet-arrow-example parquet_static)
|
||||
+endif()
|
||||
diff --git a/cpp/src/parquet/CMakeLists.txt b/cpp/src/parquet/CMakeLists.txt
|
||||
index 542fa5bc083b..caed26173428 100644
|
||||
--- a/cpp/src/parquet/CMakeLists.txt
|
||||
+++ b/cpp/src/parquet/CMakeLists.txt
|
||||
@@ -106,9 +106,11 @@ endfunction()
|
||||
|
||||
if(ARROW_BUILD_STATIC)
|
||||
set(PARQUET_STATIC_LINK_LIBS arrow_static ${ARROW_STATIC_LINK_LIBS})
|
||||
+ set(PARQUET_STATIC_INTERFACE_INSTALL_LIBS arrow_static)
|
||||
set(ARROW_LIBRARIES_FOR_STATIC_TESTS arrow_testing_static arrow_static
|
||||
${ARROW_STATIC_LINK_LIBS})
|
||||
else()
|
||||
+ set(PARQUET_STATIC_INTERFACE_INSTALL_LIBS)
|
||||
set(ARROW_LIBRARIES_FOR_STATIC_TESTS arrow_testing_shared arrow_shared)
|
||||
endif()
|
||||
|
||||
@@ -218,8 +220,9 @@ if(NOT PARQUET_MINIMAL_DEPENDENCY)
|
||||
|
||||
# Link publicly with parquet_static (because internal users need to
|
||||
# transitively link all dependencies)
|
||||
- set(PARQUET_STATIC_LINK_LIBS ${PARQUET_STATIC_LINK_LIBS} thrift::thrift)
|
||||
-endif(NOT PARQUET_MINIMAL_DEPENDENCY)
|
||||
+ list(APPEND PARQUET_STATIC_LINK_LIBS thrift::thrift)
|
||||
+ list(APPEND PARQUET_STATIC_INTERFACE_INSTALL_LIBS thrift::thrift)
|
||||
+endif()
|
||||
|
||||
if(CXX_LINKER_SUPPORTS_VERSION_SCRIPT)
|
||||
set(PARQUET_SHARED_LINK_FLAGS
|
||||
@@ -243,8 +246,12 @@ add_arrow_lib(parquet
|
||||
${PARQUET_SHARED_LINK_LIBS}
|
||||
SHARED_PRIVATE_LINK_LIBS
|
||||
${PARQUET_SHARED_PRIVATE_LINK_LIBS}
|
||||
+ SHARED_INSTALL_INTERFACE_LIBS
|
||||
+ arrow_shared
|
||||
STATIC_LINK_LIBS
|
||||
- ${PARQUET_STATIC_LINK_LIBS})
|
||||
+ ${PARQUET_STATIC_LINK_LIBS}
|
||||
+ STATIC_INSTALL_INTERFACE_LIBS
|
||||
+ ${PARQUET_STATIC_INTERFACE_INSTALL_LIBS})
|
||||
|
||||
if(WIN32 AND NOT (ARROW_TEST_LINKAGE STREQUAL "static"))
|
||||
add_library(parquet_test_support STATIC
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
{
|
||||
"name": "arrow",
|
||||
"version": "8.0.1",
|
||||
"port-version": 1,
|
||||
"version": "9.0.0",
|
||||
"description": "Cross-language development platform for in-memory analytics",
|
||||
"homepage": "https://arrow.apache.org",
|
||||
"license": "Apache-2.0",
|
||||
@ -27,6 +26,7 @@
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
},
|
||||
"xsimd",
|
||||
"zlib",
|
||||
"zstd"
|
||||
],
|
||||
|
@ -1,42 +0,0 @@
|
||||
diff --git a/cpp/src/arrow/compute/light_array_test.cc b/cpp/src/arrow/compute/light_array_test.cc
|
||||
index 3f6d47803..dcc7841a0 100644
|
||||
--- a/cpp/src/arrow/compute/light_array_test.cc
|
||||
+++ b/cpp/src/arrow/compute/light_array_test.cc
|
||||
@@ -18,6 +18,7 @@
|
||||
#include "arrow/compute/light_array.h"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
+#include <numeric>
|
||||
|
||||
#include "arrow/compute/exec/test_util.h"
|
||||
#include "arrow/testing/generator.h"
|
||||
diff --git a/cpp/src/arrow/util/tracing.cc b/cpp/src/arrow/util/tracing.cc
|
||||
index b8bddcd50..126c69781 100644
|
||||
--- a/cpp/src/arrow/util/tracing.cc
|
||||
+++ b/cpp/src/arrow/util/tracing.cc
|
||||
@@ -38,6 +38,7 @@ Span::Impl& Span::Set(Impl&& impl) {
|
||||
#endif
|
||||
|
||||
// Default destructor when impl type is complete.
|
||||
+Span::Span() = default;
|
||||
Span::~Span() = default;
|
||||
|
||||
} // namespace tracing
|
||||
diff --git a/cpp/src/arrow/util/tracing.h b/cpp/src/arrow/util/tracing.h
|
||||
index 15f7fca1e..1d9d08b33 100644
|
||||
--- a/cpp/src/arrow/util/tracing.h
|
||||
+++ b/cpp/src/arrow/util/tracing.h
|
||||
@@ -35,11 +35,11 @@ class SpanImpl;
|
||||
namespace util {
|
||||
namespace tracing {
|
||||
|
||||
-class ARROW_EXPORT Span {
|
||||
+class Span {
|
||||
public:
|
||||
using Impl = arrow::internal::tracing::SpanImpl;
|
||||
|
||||
- Span() = default; // Default constructor. The inner_impl is a nullptr.
|
||||
+ Span(); // Default constructor. The inner_impl is a nullptr.
|
||||
~Span(); // Destructor. Default destructor defined in tracing.cc where impl is a
|
||||
// complete type.
|
||||
|
@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "757fb3dc2404c152b9628f324087a761070406c4",
|
||||
"version": "9.0.0",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "d53797d201548a07be19eaf7d12d87198c458636",
|
||||
"version": "8.0.1",
|
||||
|
@ -177,8 +177,8 @@
|
||||
"port-version": 0
|
||||
},
|
||||
"arrow": {
|
||||
"baseline": "8.0.1",
|
||||
"port-version": 1
|
||||
"baseline": "9.0.0",
|
||||
"port-version": 0
|
||||
},
|
||||
"ashes": {
|
||||
"baseline": "2022-06-08",
|
||||
|
Loading…
Reference in New Issue
Block a user