aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/arrow
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/arrow')
-rw-r--r--vcpkg/ports/arrow/0001-msvc-static-name.patch13
-rw-r--r--vcpkg/ports/arrow/0003-android-musl.patch14
-rw-r--r--vcpkg/ports/arrow/0004-android-datetime.patch29
-rw-r--r--vcpkg/ports/arrow/0005-cmake-msvcruntime.patch24
-rw-r--r--vcpkg/ports/arrow/0006-pcg-msvc-arm64.patch43
-rw-r--r--vcpkg/ports/arrow/portfile.cmake158
-rw-r--r--vcpkg/ports/arrow/usage4
-rw-r--r--vcpkg/ports/arrow/usage-acero3
-rw-r--r--vcpkg/ports/arrow/usage-compute3
-rw-r--r--vcpkg/ports/arrow/usage-dataset3
-rw-r--r--vcpkg/ports/arrow/usage-flight3
-rw-r--r--vcpkg/ports/arrow/usage-flightsql3
-rw-r--r--vcpkg/ports/arrow/usage-parquet3
-rw-r--r--vcpkg/ports/arrow/vcpkg.json182
14 files changed, 485 insertions, 0 deletions
diff --git a/vcpkg/ports/arrow/0001-msvc-static-name.patch b/vcpkg/ports/arrow/0001-msvc-static-name.patch
new file mode 100644
index 0000000..45624f1
--- /dev/null
+++ b/vcpkg/ports/arrow/0001-msvc-static-name.patch
@@ -0,0 +1,13 @@
+diff --git a/cpp/cmake_modules/BuildUtils.cmake b/cpp/cmake_modules/BuildUtils.cmake
+index 391c43e0a..50f6d3d3c 100644
+--- a/cpp/cmake_modules/BuildUtils.cmake
++++ b/cpp/cmake_modules/BuildUtils.cmake
+@@ -427,7 +427,7 @@ function(ADD_ARROW_LIB LIB_NAME)
+ target_include_directories(${LIB_NAME}_static PRIVATE ${ARG_PRIVATE_INCLUDES})
+ endif()
+
+- if(MSVC_TOOLCHAIN)
++ if(MSVC_TOOLCHAIN AND 0)
+ set(LIB_NAME_STATIC ${LIB_NAME}_static)
+ else()
+ set(LIB_NAME_STATIC ${LIB_NAME})
diff --git a/vcpkg/ports/arrow/0003-android-musl.patch b/vcpkg/ports/arrow/0003-android-musl.patch
new file mode 100644
index 0000000..9136150
--- /dev/null
+++ b/vcpkg/ports/arrow/0003-android-musl.patch
@@ -0,0 +1,14 @@
+diff --git a/cpp/src/arrow/vendored/musl/strptime.c b/cpp/src/arrow/vendored/musl/strptime.c
+index 41912fd..0ea36e9 100644
+--- a/cpp/src/arrow/vendored/musl/strptime.c
++++ b/cpp/src/arrow/vendored/musl/strptime.c
+@@ -18,7 +18,9 @@
+ #undef HAVE_LANGINFO
+
+ #ifndef _WIN32
++# if !(defined(__ANDROID__) && __ANDROID_API__ < 26)
+ #define HAVE_LANGINFO 1
++# endif
+ #endif
+
+ #ifdef HAVE_LANGINFO
diff --git a/vcpkg/ports/arrow/0004-android-datetime.patch b/vcpkg/ports/arrow/0004-android-datetime.patch
new file mode 100644
index 0000000..ae8b756
--- /dev/null
+++ b/vcpkg/ports/arrow/0004-android-datetime.patch
@@ -0,0 +1,29 @@
+diff --git a/cpp/src/arrow/vendored/datetime/tz.h b/cpp/src/arrow/vendored/datetime/tz.h
+index 61ab3df106..d456d6765f 100644
+--- a/cpp/src/arrow/vendored/datetime/tz.h
++++ b/cpp/src/arrow/vendored/datetime/tz.h
+@@ -858,7 +858,9 @@ private:
+ load_data(std::istream& inf, std::int32_t tzh_leapcnt, std::int32_t tzh_timecnt,
+ std::int32_t tzh_typecnt, std::int32_t tzh_charcnt);
+ # if defined(ANDROID) || defined(__ANDROID__)
++public:
+ void parse_from_android_tzdata(std::ifstream& inf, const std::size_t off);
++private:
+ # endif // defined(ANDROID) || defined(__ANDROID__)
+ #else // !USE_OS_TZDB
+ DATE_API sys_info get_info_impl(sys_seconds tp, int tz_int) const;
+diff --git a/cpp/src/arrow/vendored/datetime/visibility.h b/cpp/src/arrow/vendored/datetime/visibility.h
+index 780c00d70b..a9514edba7 100644
+--- a/cpp/src/arrow/vendored/datetime/visibility.h
++++ b/cpp/src/arrow/vendored/datetime/visibility.h
+@@ -21,6 +21,10 @@
+ # define USE_OS_TZDB 1
+ #endif
+
++#if defined(ANDROID) || defined(__ANDROID__)
++# define BUILD_TZ_LIB
++#endif
++
+ #if defined(ARROW_STATIC)
+ // intentially empty
+ #elif defined(ARROW_EXPORTING)
diff --git a/vcpkg/ports/arrow/0005-cmake-msvcruntime.patch b/vcpkg/ports/arrow/0005-cmake-msvcruntime.patch
new file mode 100644
index 0000000..7fab07b
--- /dev/null
+++ b/vcpkg/ports/arrow/0005-cmake-msvcruntime.patch
@@ -0,0 +1,24 @@
+diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
+index abfe6d274f..8bacfe89af 100644
+--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
++++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
+@@ -886,9 +886,17 @@ foreach(CONFIG DEBUG MINSIZEREL RELEASE RELWITHDEBINFO)
+ set(EP_CXX_FLAGS_${CONFIG} "${CMAKE_CXX_FLAGS_${CONFIG}}")
+ set(EP_C_FLAGS_${CONFIG} "${CMAKE_C_FLAGS_${CONFIG}}")
+ if(CONFIG STREQUAL DEBUG)
+- set(EP_MSVC_RUNTIME_LIBRARY MultiThreadedDebugDLL)
++ if(BUILD_SHARED_LIBS)
++ set(EP_MSVC_RUNTIME_LIBRARY MultiThreadedDebugDLL)
++ else()
++ set(EP_MSVC_RUNTIME_LIBRARY MultiThreadedDebug)
++ endif()
+ else()
+- set(EP_MSVC_RUNTIME_LIBRARY MultiThreadedDLL)
++ if(BUILD_SHARED_LIBS)
++ set(EP_MSVC_RUNTIME_LIBRARY MultiThreadedDLL)
++ else()
++ set(EP_MSVC_RUNTIME_LIBRARY MultiThreaded)
++ endif()
+ endif()
+ string(APPEND EP_CXX_FLAGS_${CONFIG}
+ " ${CMAKE_CXX_COMPILE_OPTIONS_MSVC_RUNTIME_LIBRARY_${EP_MSVC_RUNTIME_LIBRARY}}")
diff --git a/vcpkg/ports/arrow/0006-pcg-msvc-arm64.patch b/vcpkg/ports/arrow/0006-pcg-msvc-arm64.patch
new file mode 100644
index 0000000..93ee0cb
--- /dev/null
+++ b/vcpkg/ports/arrow/0006-pcg-msvc-arm64.patch
@@ -0,0 +1,43 @@
+diff --git a/cpp/src/arrow/vendored/pcg/pcg_uint128.hpp b/cpp/src/arrow/vendored/pcg/pcg_uint128.hpp
+index 0181e69e4e..012f3d6682 100644
+--- a/cpp/src/arrow/vendored/pcg/pcg_uint128.hpp
++++ b/cpp/src/arrow/vendored/pcg/pcg_uint128.hpp
+@@ -67,7 +67,7 @@
+ #define PCG_LITTLE_ENDIAN 1
+ #elif __BIG_ENDIAN__ || _BIG_ENDIAN
+ #define PCG_LITTLE_ENDIAN 0
+- #elif __x86_64 || __x86_64__ || _M_X64 || __i386 || __i386__ || _M_IX86
++ #elif __x86_64 || __x86_64__ || _M_X64 || __i386 || __i386__ || _M_IX86 || _M_ARM64
+ #define PCG_LITTLE_ENDIAN 1
+ #elif __powerpc__ || __POWERPC__ || __ppc__ || __PPC__ \
+ || __m68k__ || __mc68000__
+@@ -734,7 +734,13 @@ uint_x4<UInt,UIntX2> operator*(const uint_x4<UInt,UIntX2>& a,
+
+ #if PCG_64BIT_SPECIALIZATIONS
+ #if defined(_MSC_VER)
++#if defined(_M_X64) || defined(_M_IX86)
+ #pragma intrinsic(_umul128)
++#elif defined(_M_ARM64)
++#pragma intrinsic(__umulh)
++#else
++#error Unsupported architecture
++#endif
+ #endif
+
+ #if defined(_MSC_VER) || __SIZEOF_INT128__
+@@ -743,8 +749,15 @@ uint_x4<UInt32,uint64_t> operator*(const uint_x4<UInt32,uint64_t>& a,
+ const uint_x4<UInt32,uint64_t>& b)
+ {
+ #if defined(_MSC_VER)
++#if defined(_M_X64) || defined(_M_IX86)
+ uint64_t hi;
+ uint64_t lo = _umul128(a.d.v01, b.d.v01, &hi);
++#elif defined(_M_ARM64)
++ uint64_t lo = a.d.v01 * b.d.v01;
++ uint64_t hi = __umulh(a.d.v01, b.d.v01);
++#else
++#error Unsupported architecture
++#endif
+ #else
+ __uint128_t r = __uint128_t(a.d.v01) * __uint128_t(b.d.v01);
+ uint64_t lo = uint64_t(r);
diff --git a/vcpkg/ports/arrow/portfile.cmake b/vcpkg/ports/arrow/portfile.cmake
new file mode 100644
index 0000000..2b1e120
--- /dev/null
+++ b/vcpkg/ports/arrow/portfile.cmake
@@ -0,0 +1,158 @@
+vcpkg_download_distfile(
+ ARCHIVE_PATH
+ URLS "https://archive.apache.org/dist/arrow/arrow-${VERSION}/apache-arrow-${VERSION}.tar.gz"
+ FILENAME apache-arrow-${VERSION}.tar.gz
+ SHA512 89da6de7eb2513c797d6671e1addf40b8b156215b481cf2511fa69faa16547c52d8220727626eeda499e4384d276e03880cd920aaab41c3d15106743d51a90a6
+)
+vcpkg_extract_source_archive(
+ SOURCE_PATH
+ ARCHIVE ${ARCHIVE_PATH}
+ PATCHES
+ 0001-msvc-static-name.patch
+ 0003-android-musl.patch
+ 0004-android-datetime.patch
+ 0005-cmake-msvcruntime.patch
+ 0006-pcg-msvc-arm64.patch
+)
+
+# Check cpp/cmake_modules/DefineOptions.cmake for option dependencies -
+# they must be modeled as feature dependencies in vcpkg.json.
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ acero ARROW_ACERO
+ compute ARROW_COMPUTE
+ csv ARROW_CSV
+ cuda ARROW_CUDA
+ dataset ARROW_DATASET
+ filesystem ARROW_FILESYSTEM
+ flight ARROW_FLIGHT
+ flightsql ARROW_FLIGHT_SQL
+ gcs ARROW_GCS
+ jemalloc ARROW_JEMALLOC
+ json ARROW_JSON
+ mimalloc ARROW_MIMALLOC
+ orc ARROW_ORC
+ parquet ARROW_PARQUET
+ parquet PARQUET_REQUIRE_ENCRYPTION
+ s3 ARROW_S3
+)
+
+if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
+ list(APPEND FEATURE_OPTIONS "-DARROW_USE_NATIVE_INT128=OFF")
+endif()
+
+if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
+ list(APPEND FEATURE_OPTIONS "-DARROW_SIMD_LEVEL=NONE")
+endif()
+
+string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} "dynamic" ARROW_BUILD_SHARED)
+string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} "static" ARROW_BUILD_STATIC)
+string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} "dynamic" ARROW_DEPENDENCY_USE_SHARED)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}/cpp"
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED}
+ -DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC}
+ -DARROW_BUILD_TESTS=OFF
+ -DARROW_DEPENDENCY_SOURCE=SYSTEM
+ -DARROW_DEPENDENCY_USE_SHARED=${ARROW_DEPENDENCY_USE_SHARED}
+ -DARROW_PACKAGE_KIND=vcpkg
+ -DARROW_WITH_BROTLI=ON
+ -DARROW_WITH_BZ2=ON
+ -DARROW_WITH_LZ4=ON
+ -DARROW_WITH_SNAPPY=ON
+ -DARROW_WITH_ZLIB=ON
+ -DARROW_WITH_ZSTD=ON
+ -DBUILD_WARNING_LEVEL=PRODUCTION
+ -DZSTD_MSVC_LIB_PREFIX=
+ MAYBE_UNUSED_VARIABLES
+ ZSTD_MSVC_LIB_PREFIX
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+
+vcpkg_fixup_pkgconfig()
+
+if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/arrow_static.lib")
+ message(FATAL_ERROR "Installed lib file should be named 'arrow.lib' via patching the upstream build.")
+endif()
+
+if("dataset" IN_LIST FEATURES)
+ vcpkg_cmake_config_fixup(
+ PACKAGE_NAME arrowdataset
+ CONFIG_PATH lib/cmake/ArrowDataset
+ DO_NOT_DELETE_PARENT_CONFIG_PATH
+ )
+endif()
+
+if("acero" IN_LIST FEATURES)
+ vcpkg_cmake_config_fixup(
+ PACKAGE_NAME arrowacero
+ CONFIG_PATH lib/cmake/ArrowAcero
+ DO_NOT_DELETE_PARENT_CONFIG_PATH
+ )
+endif()
+
+if("compute" IN_LIST FEATURES)
+ vcpkg_cmake_config_fixup(
+ PACKAGE_NAME arrowcompute
+ CONFIG_PATH lib/cmake/ArrowCompute
+ DO_NOT_DELETE_PARENT_CONFIG_PATH
+ )
+endif()
+
+if("flight" IN_LIST FEATURES)
+ vcpkg_cmake_config_fixup(
+ PACKAGE_NAME arrowflight
+ CONFIG_PATH lib/cmake/ArrowFlight
+ DO_NOT_DELETE_PARENT_CONFIG_PATH
+ )
+endif()
+
+if("flightsql" IN_LIST FEATURES)
+ vcpkg_cmake_config_fixup(
+ PACKAGE_NAME arrowflightsql
+ CONFIG_PATH lib/cmake/ArrowFlightSql
+ DO_NOT_DELETE_PARENT_CONFIG_PATH
+ )
+endif()
+
+if("parquet" IN_LIST FEATURES)
+ vcpkg_cmake_config_fixup(
+ PACKAGE_NAME parquet
+ CONFIG_PATH lib/cmake/Parquet
+ DO_NOT_DELETE_PARENT_CONFIG_PATH
+ )
+endif()
+
+file(GLOB main_configs "${CURRENT_PACKAGES_DIR}/lib/cmake/Arrow/*onfig.cmake")
+file(GLOB extra_configs "${CURRENT_PACKAGES_DIR}/lib/cmake/*/*onfig.cmake")
+list(REMOVE_ITEM extra_configs ${main_configs})
+if(NOT "${extra_configs}" STREQUAL "")
+ message("${Z_VCPKG_BACKCOMPAT_MESSAGE_LEVEL}"
+ "Unhandled CMake config: ${extra_configs}\n"
+ "This might be caused by insufficient feature dependencies in ports/arrow/vcpkg.json."
+ )
+endif()
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Arrow)
+
+file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+foreach(feature IN ITEMS parquet dataset acero compute flight flightsql)
+ if(feature IN_LIST FEATURES)
+ file(READ "${CMAKE_CURRENT_LIST_DIR}/usage-${feature}" feature_usage)
+ file(APPEND "${CURRENT_PACKAGES_DIR}/share/${PORT}/usage" "${feature_usage}")
+ endif()
+endforeach()
+
+if("example" IN_LIST FEATURES)
+ file(INSTALL "${SOURCE_PATH}/cpp/examples/minimal_build/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}/example")
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt")
diff --git a/vcpkg/ports/arrow/usage b/vcpkg/ports/arrow/usage
new file mode 100644
index 0000000..a004363
--- /dev/null
+++ b/vcpkg/ports/arrow/usage
@@ -0,0 +1,4 @@
+The package arrow provides CMake targets:
+
+ find_package(Arrow CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,Arrow::arrow_static,Arrow::arrow_shared>")
diff --git a/vcpkg/ports/arrow/usage-acero b/vcpkg/ports/arrow/usage-acero
new file mode 100644
index 0000000..bde5ef8
--- /dev/null
+++ b/vcpkg/ports/arrow/usage-acero
@@ -0,0 +1,3 @@
+
+ find_package(ArrowAcero CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,ArrowAcero::arrow_acero_static,ArrowAcero::arrow_acero_shared>")
diff --git a/vcpkg/ports/arrow/usage-compute b/vcpkg/ports/arrow/usage-compute
new file mode 100644
index 0000000..709428b
--- /dev/null
+++ b/vcpkg/ports/arrow/usage-compute
@@ -0,0 +1,3 @@
+
+ find_package(ArrowCompute CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,ArrowCompute::arrow_compute_static,ArrowCompute::arrow_compute_shared>")
diff --git a/vcpkg/ports/arrow/usage-dataset b/vcpkg/ports/arrow/usage-dataset
new file mode 100644
index 0000000..dcb9bda
--- /dev/null
+++ b/vcpkg/ports/arrow/usage-dataset
@@ -0,0 +1,3 @@
+
+ find_package(ArrowDataset CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,ArrowDataset::arrow_dataset_static,ArrowDataset::arrow_dataset_shared>")
diff --git a/vcpkg/ports/arrow/usage-flight b/vcpkg/ports/arrow/usage-flight
new file mode 100644
index 0000000..69abcf6
--- /dev/null
+++ b/vcpkg/ports/arrow/usage-flight
@@ -0,0 +1,3 @@
+
+ find_package(ArrowFlight CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,ArrowFlight::arrow_flight_static,ArrowFlight::arrow_flight_shared>")
diff --git a/vcpkg/ports/arrow/usage-flightsql b/vcpkg/ports/arrow/usage-flightsql
new file mode 100644
index 0000000..2f7e9cf
--- /dev/null
+++ b/vcpkg/ports/arrow/usage-flightsql
@@ -0,0 +1,3 @@
+
+ find_package(ArrowFlightSql CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,ArrowFlightSql::arrow_flight_sql_static,ArrowFlightSql::arrow_flight_sql_shared>")
diff --git a/vcpkg/ports/arrow/usage-parquet b/vcpkg/ports/arrow/usage-parquet
new file mode 100644
index 0000000..ddec5c5
--- /dev/null
+++ b/vcpkg/ports/arrow/usage-parquet
@@ -0,0 +1,3 @@
+
+ find_package(Parquet CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE "$<IF:$<BOOL:${ARROW_BUILD_STATIC}>,Parquet::parquet_static,Parquet::parquet_shared>")
diff --git a/vcpkg/ports/arrow/vcpkg.json b/vcpkg/ports/arrow/vcpkg.json
new file mode 100644
index 0000000..96a8704
--- /dev/null
+++ b/vcpkg/ports/arrow/vcpkg.json
@@ -0,0 +1,182 @@
+{
+ "name": "arrow",
+ "version": "21.0.0",
+ "port-version": 2,
+ "description": "Cross-language development platform for in-memory analytics",
+ "homepage": "https://arrow.apache.org",
+ "license": "Apache-2.0",
+ "supports": "x64 | arm64",
+ "dependencies": [
+ "boost-filesystem",
+ "boost-multiprecision",
+ "boost-system",
+ "brotli",
+ "bzip2",
+ "gflags",
+ "lz4",
+ "openssl",
+ "re2",
+ "snappy",
+ "thrift",
+ "utf8proc",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ },
+ "xsimd",
+ "zlib",
+ "zstd"
+ ],
+ "default-features": [
+ "csv",
+ "filesystem",
+ "json",
+ "parquet"
+ ],
+ "features": {
+ "acero": {
+ "description": "Acero support",
+ "dependencies": [
+ {
+ "name": "arrow",
+ "default-features": false,
+ "features": [
+ "compute"
+ ]
+ }
+ ]
+ },
+ "compute": {
+ "description": "Build all computational kernel functions"
+ },
+ "csv": {
+ "description": "CSV support"
+ },
+ "cuda": {
+ "description": "cuda support",
+ "dependencies": [
+ "cuda"
+ ]
+ },
+ "dataset": {
+ "description": "Dataset support",
+ "dependencies": [
+ {
+ "name": "arrow",
+ "default-features": false,
+ "features": [
+ "acero",
+ "filesystem"
+ ]
+ }
+ ]
+ },
+ "example": {
+ "description": "Install the minimal example (source code)"
+ },
+ "filesystem": {
+ "description": "Filesystem support"
+ },
+ "flight": {
+ "description": "Arrow Flight RPC support",
+ "dependencies": [
+ "abseil",
+ "c-ares",
+ "grpc",
+ "protobuf"
+ ]
+ },
+ "flightsql": {
+ "description": "FlightSQL support",
+ "dependencies": [
+ {
+ "name": "arrow",
+ "default-features": false,
+ "features": [
+ "flight"
+ ]
+ }
+ ]
+ },
+ "gcs": {
+ "description": "GCS support",
+ "dependencies": [
+ {
+ "name": "arrow",
+ "default-features": false,
+ "features": [
+ "filesystem"
+ ]
+ },
+ {
+ "name": "google-cloud-cpp",
+ "default-features": false,
+ "features": [
+ "storage"
+ ]
+ }
+ ]
+ },
+ "jemalloc": {
+ "description": "jemalloc allocator",
+ "supports": "!windows"
+ },
+ "json": {
+ "description": "JSON support",
+ "dependencies": [
+ "rapidjson"
+ ]
+ },
+ "mimalloc": {
+ "description": "mimalloc allocator",
+ "supports": "!staticcrt"
+ },
+ "orc": {
+ "description": "ORC support",
+ "dependencies": [
+ "orc"
+ ]
+ },
+ "parquet": {
+ "description": "Parquet support",
+ "dependencies": [
+ {
+ "name": "arrow",
+ "default-features": false,
+ "features": [
+ "json"
+ ]
+ },
+ "rapidjson"
+ ]
+ },
+ "s3": {
+ "description": "S3 support",
+ "dependencies": [
+ {
+ "name": "arrow",
+ "default-features": false,
+ "features": [
+ "filesystem"
+ ]
+ },
+ {
+ "name": "aws-sdk-cpp",
+ "default-features": false,
+ "features": [
+ "cognito-identity",
+ "config",
+ "identity-management",
+ "s3",
+ "sts",
+ "transfer"
+ ]
+ }
+ ]
+ }
+ }
+}