aboutsummaryrefslogtreecommitdiff
path: root/ports/arrow
diff options
context:
space:
mode:
authormyd7349 <myd7349@gmail.com>2019-05-27 19:15:06 +0800
committermyd7349 <myd7349@gmail.com>2019-05-27 19:15:06 +0800
commit8999734b401bb8bac9fa20ce831b2ad2a9a67add (patch)
tree3f5cf1d5abbbc4295b556ea6e27882950bdd81f3 /ports/arrow
parenta7ac12c90afed0a13e3b24d509927d2fca506115 (diff)
parent9ffac4d56eed774419fbb628ea89417a6399db58 (diff)
downloadvcpkg-8999734b401bb8bac9fa20ce831b2ad2a9a67add.tar.gz
vcpkg-8999734b401bb8bac9fa20ce831b2ad2a9a67add.zip
Merge branch 'master' into rdkafka-init
Diffstat (limited to 'ports/arrow')
-rw-r--r--ports/arrow/CONTROL4
-rw-r--r--ports/arrow/all.patch42
-rw-r--r--ports/arrow/findzstd.patch78
-rw-r--r--ports/arrow/msvc-libname.patch13
-rw-r--r--ports/arrow/portfile.cmake64
5 files changed, 131 insertions, 70 deletions
diff --git a/ports/arrow/CONTROL b/ports/arrow/CONTROL
index aaf6c0535..1bfaa8a97 100644
--- a/ports/arrow/CONTROL
+++ b/ports/arrow/CONTROL
@@ -1,4 +1,4 @@
Source: arrow
-Version: 0.13.0
-Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, zstd, snappy, gflags, thrift, double-conversion, glog
+Version: 0.13.0-3
+Build-Depends: boost-system, boost-filesystem, boost-multiprecision, boost-algorithm, flatbuffers, rapidjson, zlib, lz4, brotli, zstd, snappy, gflags, thrift, double-conversion, glog, uriparser
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.
diff --git a/ports/arrow/all.patch b/ports/arrow/all.patch
index 2e994af9b..3257dc437 100644
--- a/ports/arrow/all.patch
+++ b/ports/arrow/all.patch
@@ -1,7 +1,7 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
+diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
index 52081c4..e1e13b5 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
+--- a/cpp/CMakeLists.txt
++++ b/cpp/CMakeLists.txt
@@ -804,6 +804,9 @@ if(ARROW_USE_GLOG)
list(APPEND ARROW_LINK_LIBS GLOG::glog)
list(APPEND ARROW_STATIC_LINK_LIBS GLOG::glog)
@@ -12,10 +12,10 @@ index 52081c4..e1e13b5 100644
add_definitions("-DARROW_USE_GLOG")
endif()
-diff --git a/cmake_modules/FindBrotli.cmake b/cmake_modules/FindBrotli.cmake
+diff --git a/cpp/cmake_modules/FindBrotli.cmake b/cpp/cmake_modules/FindBrotli.cmake
index e1429a2..6dee036 100644
---- a/cmake_modules/FindBrotli.cmake
-+++ b/cmake_modules/FindBrotli.cmake
+--- a/cpp/cmake_modules/FindBrotli.cmake
++++ b/cpp/cmake_modules/FindBrotli.cmake
@@ -18,6 +18,7 @@
# find_package(Brotli)
@@ -110,10 +110,10 @@ index e1429a2..6dee036 100644
find_package_handle_standard_args(Brotli
REQUIRED_VARS
BROTLI_COMMON_LIBRARY
-diff --git a/cmake_modules/FindLz4.cmake b/cmake_modules/FindLz4.cmake
+diff --git a/cpp/cmake_modules/FindLz4.cmake b/cpp/cmake_modules/FindLz4.cmake
index 3606f5c..1d18b7c 100644
---- a/cmake_modules/FindLz4.cmake
-+++ b/cmake_modules/FindLz4.cmake
+--- a/cpp/cmake_modules/FindLz4.cmake
++++ b/cpp/cmake_modules/FindLz4.cmake
@@ -19,24 +19,26 @@ if(MSVC AND NOT DEFINED LZ4_MSVC_STATIC_LIB_SUFFIX)
set(LZ4_MSVC_STATIC_LIB_SUFFIX "_static")
endif()
@@ -157,10 +157,10 @@ index 3606f5c..1d18b7c 100644
PATH_SUFFIXES "lib64" "lib" "bin")
find_path(LZ4_INCLUDE_DIR NAMES lz4.h PATH_SUFFIXES "include")
endif()
-diff --git a/cmake_modules/FindThrift.cmake b/cmake_modules/FindThrift.cmake
+diff --git a/cpp/cmake_modules/FindThrift.cmake b/cpp/cmake_modules/FindThrift.cmake
index a4decf7..78ec7c8 100644
---- a/cmake_modules/FindThrift.cmake
-+++ b/cmake_modules/FindThrift.cmake
+--- a/cpp/cmake_modules/FindThrift.cmake
++++ b/cpp/cmake_modules/FindThrift.cmake
@@ -65,6 +65,10 @@ if(MSVC AND NOT THRIFT_MSVC_STATIC_LIB_SUFFIX)
set(THRIFT_MSVC_STATIC_LIB_SUFFIX md)
endif()
@@ -191,10 +191,10 @@ index a4decf7..78ec7c8 100644
HINTS ${Thrift_ROOT}
PATH_SUFFIXES "lib/${CMAKE_LIBRARY_ARCHITECTURE}" "lib")
find_path(THRIFT_INCLUDE_DIR thrift/Thrift.h
-diff --git a/cmake_modules/FindZSTD.cmake b/cmake_modules/FindZSTD.cmake
+diff --git a/cpp/cmake_modules/FindZSTD.cmake b/cpp/cmake_modules/FindZSTD.cmake
index 17b58a3..fa2ab05 100644
---- a/cmake_modules/FindZSTD.cmake
-+++ b/cmake_modules/FindZSTD.cmake
+--- a/cpp/cmake_modules/FindZSTD.cmake
++++ b/cpp/cmake_modules/FindZSTD.cmake
@@ -19,7 +19,11 @@ if(MSVC AND NOT DEFINED ZSTD_MSVC_STATIC_LIB_SUFFIX)
set(ZSTD_MSVC_STATIC_LIB_SUFFIX "_static")
endif()
@@ -242,10 +242,10 @@ index 17b58a3..fa2ab05 100644
find_path(ZSTD_INCLUDE_DIR NAMES zstd.h PATH_SUFFIXES "include")
endif()
-diff --git a/cmake_modules/FindgflagsAlt.cmake b/cmake_modules/FindgflagsAlt.cmake
+diff --git a/cpp/cmake_modules/FindgflagsAlt.cmake b/cpp/cmake_modules/FindgflagsAlt.cmake
index a9b8684..fdb815a 100644
---- a/cmake_modules/FindgflagsAlt.cmake
-+++ b/cmake_modules/FindgflagsAlt.cmake
+--- a/cpp/cmake_modules/FindgflagsAlt.cmake
++++ b/cpp/cmake_modules/FindgflagsAlt.cmake
@@ -15,18 +15,13 @@
# specific language governing permissions and limitations
# under the License.
@@ -270,10 +270,10 @@ index a9b8684..fdb815a 100644
find_package_handle_standard_args(gflagsAlt REQUIRED_VARS gflags_LIB GFLAGS_INCLUDE_DIR)
if(gflagsAlt_FOUND)
-diff --git a/cmake_modules/ThirdpartyToolchain.cmake b/cmake_modules/ThirdpartyToolchain.cmake
+diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index bdb122b..58c123e 100644
---- a/cmake_modules/ThirdpartyToolchain.cmake
-+++ b/cmake_modules/ThirdpartyToolchain.cmake
+--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
++++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -923,10 +923,7 @@ if(ARROW_NEED_GFLAGS)
elseif(gflags_SOURCE STREQUAL "SYSTEM")
# gflagsConfig.cmake is not installed on Ubuntu/Debian
diff --git a/ports/arrow/findzstd.patch b/ports/arrow/findzstd.patch
new file mode 100644
index 000000000..c45f12d0b
--- /dev/null
+++ b/ports/arrow/findzstd.patch
@@ -0,0 +1,78 @@
+diff --git a/cpp/cmake_modules/FindZSTD.cmake b/cpp/cmake_modules/FindZSTD.cmake
+index 21b4981ec..818e4b5e1 100644
+--- a/cpp/cmake_modules/FindZSTD.cmake
++++ b/cpp/cmake_modules/FindZSTD.cmake
+@@ -19,44 +19,60 @@ if(MSVC AND NOT DEFINED ZSTD_MSVC_STATIC_LIB_SUFFIX)
+ set(ZSTD_MSVC_STATIC_LIB_SUFFIX "_static")
+ endif()
+
+-if(CMAKE_BUILD_TYPE STREQUAL "DEBUG")
+- set(ZSTD_LIB_NAME_DEBUG_SUFFIX d)
+-endif()
+-
++set(ZSTD_LIB_NAME_DEBUG_SUFFIX d)
+ set(ZSTD_STATIC_LIB_SUFFIX "${ZSTD_MSVC_STATIC_LIB_SUFFIX}${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
+ set(ZSTD_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}zstd${ZSTD_STATIC_LIB_SUFFIX})
+
++set(ZSTD_LIB_NAMES_RELEASE zstd "${ZSTD_STATIC_LIB_NAME}" "lib${ZSTD_STATIC_LIB_NAME}"
++ "${CMAKE_SHARED_LIBRARY_PREFIX}zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}")
++set(ZSTD_LIB_NAMES_DEBUG)
++foreach(_zstd_name ${ZSTD_LIB_NAMES_RELEASE})
++ list(APPEND ZSTD_LIB_NAMES_DEBUG ${_zstd_name}${ZSTD_LIB_NAME_DEBUG_SUFFIX})
++ if(DEFINED CMAKE_DEBUG_POSTFIX)
++ list(APPEND ZSTD_LIB_NAMES_DEBUG ${_zstd_name}${CMAKE_DEBUG_POSTFIX})
++ endif()
++endforeach()
++
+ pkg_check_modules(ZSTD_PC libzstd)
+ if(ZSTD_PC_FOUND)
+ set(ZSTD_INCLUDE_DIR "${ZSTD_PC_INCLUDEDIR}")
+
+ list(APPEND ZSTD_PC_LIBRARY_DIRS "${ZSTD_PC_LIBDIR}")
+- find_library(ZSTD_LIB zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX}
++ find_library(ZSTD_LIBRARY_RELEASE ${ZSTD_LIB_NAMES_RELEASE}
+ PATHS ${ZSTD_PC_LIBRARY_DIRS}
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES "${CMAKE_LIBRARY_ARCHITECTURE}")
++ find_library(ZSTD_LIBRARY_DEBUG ${ZSTD_LIB_NAMES_DEBUG}
++ PATHS ${ZSTD_PC_LIBRARY_DIRS}
++ NO_DEFAULT_PATH
++ PATH_SUFFIXES "${CMAKE_LIBRARY_ARCHITECTURE}")
++
+ elseif(ZSTD_ROOT)
+ message(STATUS "Using ZSTD_ROOT: ${ZSTD_ROOT}")
+- find_library(ZSTD_LIB
+- NAMES zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX} "${ZSTD_STATIC_LIB_NAME}" "lib${ZSTD_STATIC_LIB_NAME}"
+- "${CMAKE_SHARED_LIBRARY_PREFIX}zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}")
++ find_library(ZSTD_LIBRARY_RELEASE
++ NAMES ${ZSTD_LIB_NAMES_RELEASE})
++ find_library(ZSTD_LIBRARY_DEBUG
++ NAMES ${ZSTD_LIB_NAMES_DEBUG})
+ find_path(ZSTD_INCLUDE_DIR
+ NAMES zstd.h
+ PATHS ${ZSTD_ROOT} "${ZSTD_ROOT}/Library"
+ NO_DEFAULT_PATH
+ PATH_SUFFIXES "include")
+ else()
+- find_library(ZSTD_LIB
+- NAMES zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX} "${ZSTD_STATIC_LIB_NAME}" "lib${ZSTD_STATIC_LIB_NAME}"
+- "${CMAKE_SHARED_LIBRARY_PREFIX}zstd${ZSTD_LIB_NAME_DEBUG_SUFFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}")
++ find_library(ZSTD_LIBRARY_RELEASE
++ NAMES ${ZSTD_LIB_NAMES_RELEASE})
++ find_library(ZSTD_LIBRARY_DEBUG
++ NAMES ${ZSTD_LIB_NAMES_DEBUG})
+ find_path(ZSTD_INCLUDE_DIR NAMES zstd.h PATH_SUFFIXES "include")
+ endif()
+-
++select_library_configurations(ZSTD)
++set(ZSTD_LIB ${ZSTD_LIBRARY})
+ find_package_handle_standard_args(ZSTD REQUIRED_VARS ZSTD_LIB ZSTD_INCLUDE_DIR)
+
+ if(ZSTD_FOUND)
+ add_library(ZSTD::zstd UNKNOWN IMPORTED)
+ set_target_properties(ZSTD::zstd
+- PROPERTIES IMPORTED_LOCATION "${ZSTD_LIB}"
++ PROPERTIES IMPORTED_LOCATION_RELEASE "${ZSTD_LIBRARY_RELEASE}"
++ IMPORTED_LOCATION_DEBUG "${ZSTD_LIBRARY_DEBUG}"
+ INTERFACE_INCLUDE_DIRECTORIES "${ZSTD_INCLUDE_DIR}")
+ endif()
diff --git a/ports/arrow/msvc-libname.patch b/ports/arrow/msvc-libname.patch
new file mode 100644
index 000000000..a997822d0
--- /dev/null
+++ b/ports/arrow/msvc-libname.patch
@@ -0,0 +1,13 @@
+diff --git a/cpp/cmake_modules/BuildUtils.cmake b/cpp/cmake_modules/BuildUtils.cmake
+index 0f014ba..fd2e7b3 100644
+--- a/cpp/cmake_modules/BuildUtils.cmake
++++ b/cpp/cmake_modules/BuildUtils.cmake
+@@ -289,7 +289,7 @@ function(ADD_ARROW_LIB LIB_NAME)
+ target_include_directories(${LIB_NAME}_static PRIVATE ${ARG_PRIVATE_INCLUDES})
+ endif()
+
+- if(MSVC)
++ if(MSVC AND 0)
+ set(LIB_NAME_STATIC ${LIB_NAME}_static)
+ else()
+ set(LIB_NAME_STATIC ${LIB_NAME})
diff --git a/ports/arrow/portfile.cmake b/ports/arrow/portfile.cmake
index 28b58e8bf..ed49d406e 100644
--- a/ports/arrow/portfile.cmake
+++ b/ports/arrow/portfile.cmake
@@ -10,70 +10,40 @@ vcpkg_from_github(
REF apache-arrow-0.13.0
SHA512 bbb14d11abf267a6902c7c9e0215ba7c5284f07482be2de42707145265d2809c89c2d4d8f8b918fdb8c33a5ecbd650875b987a1a694cdf653e766822be67a47d
HEAD_REF master
-)
-
-set(CPP_SOURCE_PATH "${SOURCE_PATH}/cpp")
-
-vcpkg_apply_patches(
- SOURCE_PATH ${CPP_SOURCE_PATH}
PATCHES
- "${CMAKE_CURRENT_LIST_DIR}/all.patch"
+ all.patch
+ msvc-libname.patch
+ findzstd.patch
)
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} "static" IS_STATIC)
-
-if (IS_STATIC)
- set(PARQUET_ARROW_LINKAGE static)
- set(BOOST_USE_SHARED off)
- set(USE_STATIC_CRT on)
-else()
- set(PARQUET_ARROW_LINKAGE shared)
- set(BOOST_USE_SHARED on)
- set(USE_STATIC_CRT off)
-endif()
-
vcpkg_configure_cmake(
- SOURCE_PATH ${CPP_SOURCE_PATH}
+ SOURCE_PATH ${SOURCE_PATH}/cpp
PREFER_NINJA
OPTIONS
- -DARROW_DEPENDENCY_SOURCE=SYSTEM
- -DARROW_BUILD_TESTS=off
- -DBOOST_ROOT=${CURRENT_INSTALLED_DIR}
- -DARROW_PARQUET=ON
- -DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC}
- -DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED}
- -DBUILD_STATIC=${ARROW_BUILD_STATIC}
- -DBUILD_SHARED=${ARROW_BUILD_SHARED}
- -DPARQUET_ARROW_LINKAGE=${PARQUET_ARROW_LINKAGE}
- -DARROW_BOOST_USE_SHARED=${BOOST_USE_SHARED}
- -DARROW_USE_STATIC_CRT=${USE_STATIC_CRT}
- -DARROW_GFLAGS_USE_SHARED=off
- -DARROW_JEMALLOC=off
+ -DARROW_DEPENDENCY_SOURCE=SYSTEM
+ -Duriparser_SOURCE=SYSTEM
+ -DARROW_BUILD_TESTS=off
+ -DARROW_PARQUET=ON
+ -DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC}
+ -DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED}
+ -DARROW_GFLAGS_USE_SHARED=off
+ -DARROW_JEMALLOC=off
+ -DARROW_BUILD_UTILITIES=OFF
)
vcpkg_install_cmake()
vcpkg_copy_pdbs()
-if(WIN32)
- if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
- file(RENAME ${CURRENT_PACKAGES_DIR}/lib/arrow_static.lib ${CURRENT_PACKAGES_DIR}/lib/arrow.lib)
- file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/arrow_static.lib ${CURRENT_PACKAGES_DIR}/debug/lib/arrow.lib)
- file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/bin)
- else()
- file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/arrow_static.lib ${CURRENT_PACKAGES_DIR}/debug/lib/arrow_static.lib)
- endif()
+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()
-file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/arrow/cmake)
-file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/arrow/arrowConfig.cmake ${CURRENT_PACKAGES_DIR}/share/arrow/cmake/arrowConfig.cmake)
-file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/arrow/arrowConfigVersion.cmake ${CURRENT_PACKAGES_DIR}/share/arrow/cmake/arrowConfigVersion.cmake)
-file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/arrow/arrowTargets-release.cmake ${CURRENT_PACKAGES_DIR}/share/arrow/cmake/arrowTargets-release.cmake)
-file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/arrow/arrowTargets.cmake ${CURRENT_PACKAGES_DIR}/share/arrow/cmake/arrowTargets.cmake)
-file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cmake/arrow/arrowTargets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/arrow/cmake/arrowTargets-debug.cmake)
+vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/arrow TARGET_PATH share/arrow)
+
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake)