vcpkg/ports/arrow/portfile.cmake
Isaac Brodsky d51b4cd532
[Arrow] Add filesystem feature (#11016)
* Add ARROW_FILESYSTEM feature

* update arrow version
2020-04-30 17:36:55 -07:00

64 lines
2.0 KiB
CMake

if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
message(FATAL_ERROR "Apache Arrow only supports x64")
endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO apache/arrow
REF apache-arrow-0.17.0
SHA512 293737db80defa0f8766f726dc228ace50936f7124647de15c2e024c2901ded1cda893d771d38aa4e9ab19ff7eb06b11dfc230587ca5b17cdd87e681fc3009ca
HEAD_REF master
PATCHES
all.patch
)
string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} "dynamic" ARROW_BUILD_SHARED)
string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} "static" ARROW_BUILD_STATIC)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
"csv" ARROW_CSV
"json" ARROW_JSON
"parquet" ARROW_PARQUET
"filesystem" ARROW_FILESYSTEM
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}/cpp
PREFER_NINJA
OPTIONS
-DARROW_DEPENDENCY_SOURCE=SYSTEM
-Duriparser_SOURCE=SYSTEM
-DARROW_BUILD_TESTS=off
${FEATURE_OPTIONS}
-DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC}
-DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED}
-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()
vcpkg_copy_pdbs()
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()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/arrow)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake)
file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)