mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-28 21:09:01 +08:00
8f34b4bccf
* [Arrow] Update to 0.17.1 * Remove arrow:x64-linux=fail from ci.baseline.txt. Add explicit tool dependencies on Flex and Bison for Linux and OSX. * Revert arrow dependency on Flex/Bison, it's Thrift that needs them and its portfile is already fine. * Use vcpkg_fail_port_install(ON_ARCH x86 arm arm64) instead of custom check. Remove thrift:x64-osx=fail from ci.baseline.txt (we know arrow depends on it, and arrow:x64-osx has been shown to work in 3rd party project). * Disable using pkg-config files to locate dependencies in arrow This is incompatible with vcpkg as these files refer to paths in the packages directory rather than the installed directory, so this only works if the packages haven't been cleaned. * Mark thrift:x64-osx as still failing until a proper solution for Bison can be found. * Update ports/arrow/portfile.cmake Co-authored-by: Adam Reeve <adreeve@gmail.com> Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
62 lines
1.9 KiB
CMake
62 lines
1.9 KiB
CMake
vcpkg_fail_port_install(ON_ARCH "x86" "arm" "arm64")
|
|
|
|
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO apache/arrow
|
|
REF apache-arrow-0.17.1
|
|
SHA512 2a1a637d6df08e19d0c8313c51e1baf8902db677b072f8787c4f9faf8bdec94357ac8af839718d449377b508fe4f6e31b011cbdc6ccf029b6a66f567172569aa
|
|
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)
|