diff --git a/ports/arrow/CONTROL b/ports/arrow/CONTROL index 896f78af4..5e2b86981 100644 --- a/ports/arrow/CONTROL +++ b/ports/arrow/CONTROL @@ -1,6 +1,6 @@ Source: arrow -Version: 0.15.1 -Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, zstd, snappy, gflags, thrift, double-conversion, glog, uriparser +Version: 0.16.0 +Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, bzip2, zstd, snappy, gflags, thrift, double-conversion, glog, uriparser, openssl Homepage: https://github.com/apache/arrow Description: Apache Arrow is a columnar in-memory analytics layer designed to accelerate big data. It houses a set of canonical in-memory representations of flat and hierarchical data along with multiple language-bindings for structure manipulation. It also provides IPC and common algorithm implementations. Supports: x64 \ No newline at end of file diff --git a/ports/arrow/all.patch b/ports/arrow/all.patch index 0675356ff..3b2bdad2f 100644 --- a/ports/arrow/all.patch +++ b/ports/arrow/all.patch @@ -1,5 +1,5 @@ diff --git a/cpp/cmake_modules/BuildUtils.cmake b/cpp/cmake_modules/BuildUtils.cmake -index 4ef2948..9c3c121 100644 +index f5f0ad7..3dca82e 100644 --- a/cpp/cmake_modules/BuildUtils.cmake +++ b/cpp/cmake_modules/BuildUtils.cmake @@ -305,7 +305,7 @@ function(ADD_ARROW_LIB LIB_NAME) @@ -53,7 +53,7 @@ index 8410916..a196b25 100644 PATH_SUFFIXES ${LIB_PATH_SUFFIXES}) find_path(LZ4_INCLUDE_DIR NAMES lz4.h PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES}) diff --git a/cpp/cmake_modules/FindThrift.cmake b/cpp/cmake_modules/FindThrift.cmake -index 87cc24e..4de0760 100644 +index f9d6296..82b8d22 100644 --- a/cpp/cmake_modules/FindThrift.cmake +++ b/cpp/cmake_modules/FindThrift.cmake @@ -54,6 +54,10 @@ if(MSVC AND NOT THRIFT_MSVC_STATIC_LIB_SUFFIX) @@ -67,7 +67,7 @@ index 87cc24e..4de0760 100644 if(Thrift_ROOT) find_library(THRIFT_STATIC_LIB thrift${THRIFT_MSVC_STATIC_LIB_SUFFIX} PATHS ${Thrift_ROOT} -@@ -71,15 +75,13 @@ else() +@@ -74,16 +78,14 @@ else() list(APPEND THRIFT_PC_LIBRARY_DIRS "${THRIFT_PC_LIBDIR}") @@ -80,6 +80,7 @@ index 87cc24e..4de0760 100644 HINTS ${THRIFT_PC_PREFIX} - NO_DEFAULT_PATH PATH_SUFFIXES "bin") + set(THRIFT_VERSION ${THRIFT_PC_VERSION}) else() - find_library(THRIFT_STATIC_LIB thrift${THRIFT_MSVC_STATIC_LIB_SUFFIX} + find_library(THRIFT_STATIC_LIB thrift${THRIFT_MSVC_STATIC_LIB_SUFFIX}${THRIFT_LIB_NAME_DEBUG_SUFFIX} @@ -128,3 +129,49 @@ index 8e47086..d7ce559 100644 "${CMAKE_SHARED_LIBRARY_PREFIX}zstd${CMAKE_SHARED_LIBRARY_SUFFIX}" PATH_SUFFIXES ${LIB_PATH_SUFFIXES}) find_path(ZSTD_INCLUDE_DIR NAMES zstd.h PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES}) +diff --git a/cpp/cmake_modules/SetupCxxFlags.cmake b/cpp/cmake_modules/SetupCxxFlags.cmake +index 75b33c2..80cac9a 100644 +--- a/cpp/cmake_modules/SetupCxxFlags.cmake ++++ b/cpp/cmake_modules/SetupCxxFlags.cmake +@@ -128,7 +128,9 @@ macro(arrow_add_werror_if_debug) + if("${CMAKE_BUILD_TYPE}" STREQUAL "DEBUG") + # Treat all compiler warnings as errors + if(MSVC) +- set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} /WX") ++ if(MSVC_VERSION VERSION_LESS 1900) ++ set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} /WX") ++ endif() + else() + set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Werror") + endif() +diff --git a/cpp/src/arrow/stl.h b/cpp/src/arrow/stl.h +index 7ae9eaf..b9efdcb 100644 +--- a/cpp/src/arrow/stl.h ++++ b/cpp/src/arrow/stl.h +@@ -518,6 +518,9 @@ class allocator { + + private: + MemoryPool* pool_; ++ ++ template ++ friend class allocator; + }; + + /// \brief A MemoryPool implementation delegating allocations to a STL allocator +diff --git a/cpp/src/parquet/schema.h b/cpp/src/parquet/schema.h +index 87db4de..095ef9a 100644 +--- a/cpp/src/parquet/schema.h ++++ b/cpp/src/parquet/schema.h +@@ -460,7 +460,11 @@ class PARQUET_EXPORT SchemaDescriptor { + // -- -- b | + // -- -- -- c | + // -- -- -- -- d +- std::unordered_map leaf_to_base_; ++#if _MSC_VER >= 1900 ++ std::unordered_map leaf_to_base_; ++#else ++ std::unordered_map leaf_to_base_; ++#endif + + // Mapping between ColumnPath DotString to the leaf index + std::unordered_multimap leaf_to_idx_; diff --git a/ports/arrow/fix-msvc-1900.patch b/ports/arrow/fix-msvc-1900.patch deleted file mode 100644 index 7c29070b7..000000000 --- a/ports/arrow/fix-msvc-1900.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/cpp/cmake_modules/SetupCxxFlags.cmake b/cpp/cmake_modules/SetupCxxFlags.cmake -index 496904b..887f9c4 100644 ---- a/cpp/cmake_modules/SetupCxxFlags.cmake -+++ b/cpp/cmake_modules/SetupCxxFlags.cmake -@@ -124,7 +124,9 @@ macro(arrow_add_werror_if_debug) - if("${CMAKE_BUILD_TYPE}" STREQUAL "DEBUG") - # Treat all compiler warnings as errors - if("${COMPILER_FAMILY}" STREQUAL "msvc") -- set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} /WX") -+ if (MSVC_VERSION VERSION_LESS 1900) -+ set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} /WX") -+ endif() - else() - set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Werror") - endif() -diff --git a/cpp/src/parquet/schema.h b/cpp/src/parquet/schema.h -index 740edbc..1526c73 100644 ---- a/cpp/src/parquet/schema.h -+++ b/cpp/src/parquet/schema.h -@@ -457,7 +457,11 @@ class PARQUET_EXPORT SchemaDescriptor { - // -- -- b | - // -- -- -- c | - // -- -- -- -- d -+#if _MSC_VER >= 1900 -+ std::unordered_map leaf_to_base_; -+#else - std::unordered_map leaf_to_base_; -+#endif - - // Mapping between ColumnPath DotString to the leaf index - std::unordered_multimap leaf_to_idx_; diff --git a/ports/arrow/portfile.cmake b/ports/arrow/portfile.cmake index 3bf029752..c67e61230 100644 --- a/ports/arrow/portfile.cmake +++ b/ports/arrow/portfile.cmake @@ -7,12 +7,11 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/arrow - REF apache-arrow-0.15.1 - SHA512 f371c687ad8f944c3552f2111ee3c721b89fd0cea01c4ab64c22322fe1ad96f6feff851b6f5505d8522ff4a28e59f6cafa6ce1ee0bc291d83338e4297150dc9e + REF apache-arrow-0.16.0 + SHA512 c8d693e927218c65526b48f18c4f00f9530d1a8731575b051b017a5350e68114c16dcd41ff578b4c0cc29cc79096621809658b8eac250934ecf0fcaabadf2cf6 HEAD_REF master PATCHES all.patch - fix-msvc-1900.patch ) string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} "dynamic" ARROW_BUILD_SHARED) @@ -31,6 +30,13 @@ vcpkg_configure_cmake( -DARROW_GFLAGS_USE_SHARED=off -DARROW_JEMALLOC=off -DARROW_BUILD_UTILITIES=OFF + -DARROW_WITH_BZ2=ON + -DARROW_WITH_ZLIB=ON + -DARROW_WITH_ZSTD=ON + -DARROW_WITH_LZ4=ON + -DARROW_WITH_SNAPPY=ON + -DARROW_WITH_BROTLI=ON + -DPARQUET_REQUIRE_ENCRYPTION=ON ) vcpkg_install_cmake() @@ -49,4 +55,4 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/arrow RENAME copyright) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) \ No newline at end of file +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)