mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-06-07 13:26:32 +08:00
[Arrow] Update to 3.0.0 (#15757)
* Cherry picked WiP (Update to arrow-2.0.0) * Point to arrow-3.0.0 files * Add missing re2 dependency. Sort dependency list alphabetically. * Configure ARROW_SNAPPY_USE_SHARED * Configure ARROW_THRIFT_USE_SHARED * Spaces vs tabs. * Fix Thrift and Lz4 library finding logic. * Fix debug arrow (shared) linking against release snappy. Tell CI x86 is not supported. * Fix debug arrow (shared) linking against release snappy (for real this time). * Fix linux build not finding Lz4. * Fix thrift finding on Linux (was pointing to an intermediate dir) * Try to fix macOS 10.x build. * Update port_versions. * update version * update version Co-authored-by: Jonliu1993 <13720414433@163.com>
This commit is contained in:
parent
5793c4bd9f
commit
4260eaf6fa
@ -1,10 +1,10 @@
|
||||
Source: arrow
|
||||
Version: 1.0.1
|
||||
Port-Version: 2
|
||||
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, utf8proc
|
||||
Version: 3.0.0
|
||||
Port-Version: 0
|
||||
Build-Depends: boost-algorithm, boost-filesystem, boost-multiprecision, boost-system, brotli, bzip2, double-conversion, flatbuffers, gflags, glog, lz4, openssl, rapidjson, re2, snappy, thrift, uriparser, utf8proc, zlib, zstd
|
||||
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&!arm
|
||||
Supports: x64&!x86&!arm
|
||||
Default-Features: csv, json, parquet, filesystem
|
||||
|
||||
Feature: csv
|
||||
|
@ -1,120 +1,169 @@
|
||||
diff --git a/cpp/cmake_modules/BuildUtils.cmake b/cpp/cmake_modules/BuildUtils.cmake
|
||||
index e4e13cb70..58ca626da 100644
|
||||
index e59b4a38a..9bd895608 100644
|
||||
--- a/cpp/cmake_modules/BuildUtils.cmake
|
||||
+++ b/cpp/cmake_modules/BuildUtils.cmake
|
||||
@@ -335,7 +335,7 @@ function(ADD_ARROW_LIB LIB_NAME)
|
||||
@@ -440,7 +440,7 @@ function(ADD_ARROW_LIB LIB_NAME)
|
||||
target_include_directories(${LIB_NAME}_static PRIVATE ${ARG_PRIVATE_INCLUDES})
|
||||
endif()
|
||||
|
||||
- if(MSVC)
|
||||
+ if(MSVC AND 0)
|
||||
|
||||
- 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/cpp/cmake_modules/FindBrotli.cmake b/cpp/cmake_modules/FindBrotli.cmake
|
||||
index bf47915c4..053e605a0 100644
|
||||
index b46a0f1a0..3d87f5204 100644
|
||||
--- a/cpp/cmake_modules/FindBrotli.cmake
|
||||
+++ b/cpp/cmake_modules/FindBrotli.cmake
|
||||
@@ -64,8 +64,7 @@ if(BROTLI_ROOT)
|
||||
PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES}
|
||||
@@ -69,9 +69,9 @@ if(BROTLI_ROOT)
|
||||
PATH_SUFFIXES ${ARROW_INCLUDE_PATH_SUFFIXES}
|
||||
NO_DEFAULT_PATH)
|
||||
else()
|
||||
- find_package(PkgConfig QUIET)
|
||||
- pkg_check_modules(BROTLI_PC libbrotlicommon libbrotlienc libbrotlidec)
|
||||
- if(BROTLI_PC_FOUND)
|
||||
+ if(0) # Find via pkg_check_modules disabled as incompatible with vcpkg
|
||||
+ #find_package(PkgConfig QUIET)
|
||||
+ #pkg_check_modules(BROTLI_PC libbrotlicommon libbrotlienc libbrotlidec)
|
||||
+ if(BROTLI_PC_FOUND AND 0) # Find via pkg_check_modules disabled as incompatible with vcpkg
|
||||
set(BROTLI_INCLUDE_DIR "${BROTLI_PC_libbrotlicommon_INCLUDEDIR}")
|
||||
|
||||
|
||||
# Some systems (e.g. Fedora) don't fill Brotli_LIBRARY_DIRS, so add the other dirs here.
|
||||
diff --git a/cpp/cmake_modules/FindLz4.cmake b/cpp/cmake_modules/FindLz4.cmake
|
||||
index 841091643..bb5a00a50 100644
|
||||
index 14b6d93b9..d8d80c408 100644
|
||||
--- a/cpp/cmake_modules/FindLz4.cmake
|
||||
+++ b/cpp/cmake_modules/FindLz4.cmake
|
||||
@@ -19,14 +19,16 @@ if(MSVC AND NOT DEFINED LZ4_MSVC_STATIC_LIB_SUFFIX)
|
||||
set(LZ4_MSVC_STATIC_LIB_SUFFIX "_static")
|
||||
endif()
|
||||
|
||||
-set(LZ4_STATIC_LIB_SUFFIX "${LZ4_MSVC_STATIC_LIB_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
@@ -15,10 +15,12 @@
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
-if(MSVC_TOOLCHAIN AND NOT DEFINED LZ4_MSVC_LIB_PREFIX)
|
||||
- set(LZ4_MSVC_LIB_PREFIX "lib")
|
||||
+# Avoid the debug build linking to the release library by mistake.
|
||||
+# In theory harmless if static linking at this point, but disastrous if done for a shared library.
|
||||
+if(CMAKE_BUILD_TYPE STREQUAL "DEBUG")
|
||||
+ set(LZ4_LIB_NAME_DEBUG_SUFFIX d)
|
||||
+endif()
|
||||
|
||||
-set(LZ4_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}lz4${LZ4_STATIC_LIB_SUFFIX})
|
||||
+set(LZ4_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}lz4${LZ4_MSVC_STATIC_LIB_SUFFIX}${LZ4_LIB_NAME_DEBUG_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX})
|
||||
|
||||
if(LZ4_ROOT)
|
||||
find_library(
|
||||
LZ4_LIB
|
||||
- NAMES lz4 ${LZ4_STATIC_LIB_NAME} lib${LZ4_STATIC_LIB_NAME}
|
||||
+ NAMES lz4${LZ4_LIB_NAME_DEBUG_SUFFIX} ${LZ4_STATIC_LIB_NAME} lib${LZ4_STATIC_LIB_NAME}
|
||||
"${CMAKE_SHARED_LIBRARY_PREFIX}lz4_static${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||
PATHS ${LZ4_ROOT}
|
||||
PATH_SUFFIXES ${LIB_PATH_SUFFIXES}
|
||||
@@ -38,19 +40,19 @@ if(LZ4_ROOT)
|
||||
PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES})
|
||||
|
||||
endif()
|
||||
-set(LZ4_LIB_NAME_BASE "${LZ4_MSVC_LIB_PREFIX}lz4")
|
||||
+set(LZ4_LIB_NAME_BASE "lz4${LZ4_LIB_NAME_DEBUG_SUFFIX}")
|
||||
|
||||
if(ARROW_LZ4_USE_SHARED)
|
||||
set(LZ4_LIB_NAMES)
|
||||
@@ -34,12 +36,8 @@ if(ARROW_LZ4_USE_SHARED)
|
||||
LZ4_LIB_NAMES
|
||||
"${CMAKE_SHARED_LIBRARY_PREFIX}${LZ4_LIB_NAME_BASE}${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
else()
|
||||
- if(MSVC AND NOT DEFINED LZ4_MSVC_STATIC_LIB_SUFFIX)
|
||||
- set(LZ4_MSVC_STATIC_LIB_SUFFIX "_static")
|
||||
- endif()
|
||||
- set(LZ4_STATIC_LIB_SUFFIX "${LZ4_MSVC_STATIC_LIB_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
set(LZ4_LIB_NAMES
|
||||
- "${CMAKE_STATIC_LIBRARY_PREFIX}${LZ4_LIB_NAME_BASE}${LZ4_STATIC_LIB_SUFFIX}")
|
||||
+ "${CMAKE_STATIC_LIBRARY_PREFIX}${LZ4_LIB_NAME_BASE}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
endif()
|
||||
|
||||
if(LZ4_ROOT)
|
||||
@@ -56,8 +54,8 @@ if(LZ4_ROOT)
|
||||
|
||||
else()
|
||||
find_package(PkgConfig QUIET)
|
||||
- pkg_check_modules(LZ4_PC liblz4)
|
||||
- if(LZ4_PC_FOUND)
|
||||
+ #pkg_check_modules(LZ4_PC liblz4)
|
||||
+ if(0) #if(LZ4_PC_FOUND) # Disabled as sometimes incompatible with vcpkg on Linux and OSX
|
||||
+ if(0) # Do not use pkg_check_modules, doesn't seem to work correctly on some macOS versions (10.x in GitHub Actions)
|
||||
set(LZ4_INCLUDE_DIR "${LZ4_PC_INCLUDEDIR}")
|
||||
|
||||
|
||||
list(APPEND LZ4_PC_LIBRARY_DIRS "${LZ4_PC_LIBDIR}")
|
||||
- find_library(LZ4_LIB lz4
|
||||
+ find_library(LZ4_LIB lz4${LZ4_LIB_NAME_DEBUG_SUFFIX} ${LZ4_STATIC_LIB_NAME} lib${LZ4_STATIC_LIB_NAME}
|
||||
PATHS ${LZ4_PC_LIBRARY_DIRS}
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES ${LIB_PATH_SUFFIXES})
|
||||
else()
|
||||
find_library(
|
||||
LZ4_LIB
|
||||
- NAMES lz4 ${LZ4_STATIC_LIB_NAME} lib${LZ4_STATIC_LIB_NAME}
|
||||
+ NAMES lz4${LZ4_LIB_NAME_DEBUG_SUFFIX} ${LZ4_STATIC_LIB_NAME} lib${LZ4_STATIC_LIB_NAME}
|
||||
"${CMAKE_SHARED_LIBRARY_PREFIX}lz4_static${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||
PATH_SUFFIXES ${LIB_PATH_SUFFIXES})
|
||||
find_path(LZ4_INCLUDE_DIR NAMES lz4.h PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES})
|
||||
diff --git a/cpp/cmake_modules/FindSnappy.cmake b/cpp/cmake_modules/FindSnappy.cmake
|
||||
index 5784cf592..817cf0c47 100644
|
||||
--- a/cpp/cmake_modules/FindSnappy.cmake
|
||||
+++ b/cpp/cmake_modules/FindSnappy.cmake
|
||||
@@ -15,20 +15,27 @@
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
+# Avoid the debug build linking to the release library by mistake.
|
||||
+# In theory harmless if static linking at this point, but disastrous if done for a shared library.
|
||||
+if(CMAKE_BUILD_TYPE STREQUAL "DEBUG")
|
||||
+ set(SNAPPY_LIB_NAME_DEBUG_SUFFIX d)
|
||||
+endif()
|
||||
+
|
||||
+set(SNAPPY_LIB_NAME_BASE "snappy${SNAPPY_LIB_NAME_DEBUG_SUFFIX}")
|
||||
+
|
||||
if(ARROW_SNAPPY_USE_SHARED)
|
||||
set(SNAPPY_LIB_NAMES)
|
||||
if(CMAKE_IMPORT_LIBRARY_SUFFIX)
|
||||
list(APPEND SNAPPY_LIB_NAMES
|
||||
- "${CMAKE_IMPORT_LIBRARY_PREFIX}snappy${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||
+ "${CMAKE_IMPORT_LIBRARY_PREFIX}${SNAPPY_LIB_NAME_BASE}${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||
endif()
|
||||
list(APPEND SNAPPY_LIB_NAMES
|
||||
- "${CMAKE_SHARED_LIBRARY_PREFIX}snappy${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
+ "${CMAKE_SHARED_LIBRARY_PREFIX}${SNAPPY_LIB_NAME_BASE}${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
else()
|
||||
- set(SNAPPY_STATIC_LIB_NAME_BASE "snappy")
|
||||
if(MSVC)
|
||||
- set(SNAPPY_STATIC_LIB_NAME_BASE "${SNAPPY_STATIC_LIB_NAME_BASE}${SNAPPY_MSVC_STATIC_LIB_SUFFIX}")
|
||||
+ set(SNAPPY_STATIC_LIB_NAME_BASE "${SNAPPY_LIB_NAME_BASE}${SNAPPY_MSVC_STATIC_LIB_SUFFIX}")
|
||||
endif()
|
||||
- set(SNAPPY_LIB_NAMES "${CMAKE_STATIC_LIBRARY_PREFIX}${SNAPPY_STATIC_LIB_NAME_BASE}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
+ set(SNAPPY_LIB_NAMES "${CMAKE_STATIC_LIBRARY_PREFIX}${SNAPPY_LIB_NAME_BASE}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
endif()
|
||||
|
||||
if(Snappy_ROOT)
|
||||
diff --git a/cpp/cmake_modules/FindThrift.cmake b/cpp/cmake_modules/FindThrift.cmake
|
||||
index bb3eb5608..0b03d37d3 100644
|
||||
index 273d907ed..65f477f54 100644
|
||||
--- a/cpp/cmake_modules/FindThrift.cmake
|
||||
+++ b/cpp/cmake_modules/FindThrift.cmake
|
||||
@@ -43,6 +43,10 @@ if(MSVC AND NOT THRIFT_MSVC_STATIC_LIB_SUFFIX)
|
||||
set(THRIFT_MSVC_STATIC_LIB_SUFFIX md)
|
||||
endif()
|
||||
|
||||
@@ -39,6 +39,12 @@ function(EXTRACT_THRIFT_VERSION)
|
||||
endif()
|
||||
endfunction(EXTRACT_THRIFT_VERSION)
|
||||
|
||||
+# Avoid the debug build linking to the release library by mistake.
|
||||
+# In theory harmless if static linking at this point, but disastrous if done for a shared library.
|
||||
+if(CMAKE_BUILD_TYPE STREQUAL "DEBUG")
|
||||
+ set(THRIFT_LIB_NAME_DEBUG_SUFFIX d)
|
||||
+endif()
|
||||
+
|
||||
if(Thrift_ROOT)
|
||||
find_library(THRIFT_STATIC_LIB thrift${THRIFT_MSVC_STATIC_LIB_SUFFIX}
|
||||
PATHS ${Thrift_ROOT}
|
||||
@@ -61,16 +65,14 @@ else()
|
||||
|
||||
if(MSVC_TOOLCHAIN AND NOT DEFINED THRIFT_MSVC_LIB_SUFFIX)
|
||||
if(NOT ARROW_THRIFT_USE_SHARED)
|
||||
if(ARROW_USE_STATIC_CRT)
|
||||
@@ -48,7 +54,7 @@ if(MSVC_TOOLCHAIN AND NOT DEFINED THRIFT_MSVC_LIB_SUFFIX)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
-set(THRIFT_LIB_NAME_BASE "thrift${THRIFT_MSVC_LIB_SUFFIX}")
|
||||
+set(THRIFT_LIB_NAME_BASE "thrift${THRIFT_MSVC_LIB_SUFFIX}${THRIFT_LIB_NAME_DEBUG_SUFFIX}")
|
||||
|
||||
if(ARROW_THRIFT_USE_SHARED)
|
||||
set(THRIFT_LIB_NAMES thrift)
|
||||
@@ -84,8 +90,8 @@ else()
|
||||
# THRIFT-4760: The pkgconfig files are currently only installed when using autotools.
|
||||
# Starting with 0.13, they are also installed for the CMake-based installations of Thrift.
|
||||
find_package(PkgConfig QUIET)
|
||||
- pkg_check_modules(THRIFT_PC thrift)
|
||||
- if(THRIFT_PC_FOUND)
|
||||
+ #pkg_check_modules(THRIFT_PC thrift)
|
||||
+ if(0) # Do not use pkg_check_modules, as it finds the wrong location (an intermediate build dir).
|
||||
set(THRIFT_INCLUDE_DIR "${THRIFT_PC_INCLUDEDIR}")
|
||||
|
||||
list(APPEND THRIFT_PC_LIBRARY_DIRS "${THRIFT_PC_LIBDIR}")
|
||||
|
||||
- find_library(THRIFT_STATIC_LIB thrift${THRIFT_MSVC_STATIC_LIB_SUFFIX}
|
||||
- PATHS ${THRIFT_PC_LIBRARY_DIRS}
|
||||
- NO_DEFAULT_PATH)
|
||||
+ find_library(THRIFT_STATIC_LIB thrift${THRIFT_MSVC_STATIC_LIB_SUFFIX}${THRIFT_LIB_NAME_DEBUG_SUFFIX}
|
||||
+ PATHS ${THRIFT_PC_LIBRARY_DIRS})
|
||||
find_program(THRIFT_COMPILER thrift
|
||||
HINTS ${THRIFT_PC_PREFIX}
|
||||
- NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES "bin")
|
||||
@@ -101,8 +107,7 @@ else()
|
||||
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}
|
||||
PATH_SUFFIXES "lib/${CMAKE_LIBRARY_ARCHITECTURE}" "lib")
|
||||
find_library(THRIFT_LIB
|
||||
- NAMES ${THRIFT_LIB_NAMES}
|
||||
- PATH_SUFFIXES "lib/${CMAKE_LIBRARY_ARCHITECTURE}" "lib")
|
||||
+ NAMES ${THRIFT_LIB_NAMES})
|
||||
find_path(THRIFT_INCLUDE_DIR thrift/Thrift.h PATH_SUFFIXES "include")
|
||||
find_program(THRIFT_COMPILER thrift PATH_SUFFIXES "bin")
|
||||
diff --git a/cpp/cmake_modules/FindZSTD.cmake b/cpp/cmake_modules/FindZSTD.cmake
|
||||
index 84d21d2b5..971a9dec3 100644
|
||||
--- a/cpp/cmake_modules/FindZSTD.cmake
|
||||
+++ b/cpp/cmake_modules/FindZSTD.cmake
|
||||
@@ -24,11 +24,11 @@ if(ARROW_ZSTD_USE_SHARED)
|
||||
list(APPEND ZSTD_LIB_NAMES
|
||||
"${CMAKE_SHARED_LIBRARY_PREFIX}zstd${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
extract_thrift_version()
|
||||
diff --git a/cpp/cmake_modules/Findzstd.cmake b/cpp/cmake_modules/Findzstd.cmake
|
||||
index 6659a682d..d8cc4f72d 100644
|
||||
--- a/cpp/cmake_modules/Findzstd.cmake
|
||||
+++ b/cpp/cmake_modules/Findzstd.cmake
|
||||
@@ -34,13 +34,14 @@ if(ARROW_ZSTD_USE_SHARED)
|
||||
ZSTD_LIB_NAMES
|
||||
"${CMAKE_SHARED_LIBRARY_PREFIX}${ZSTD_LIB_NAME_BASE}${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
else()
|
||||
- if(MSVC AND NOT DEFINED ZSTD_MSVC_STATIC_LIB_SUFFIX)
|
||||
- set(ZSTD_MSVC_STATIC_LIB_SUFFIX "_static")
|
||||
@ -124,90 +173,10 @@ index 84d21d2b5..971a9dec3 100644
|
||||
set(ZSTD_STATIC_LIB_SUFFIX
|
||||
- "${ZSTD_MSVC_STATIC_LIB_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
+ "${ZSTD_MSVC_DEBUG_LIB_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
set(ZSTD_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}zstd${ZSTD_STATIC_LIB_SUFFIX})
|
||||
set(ZSTD_LIB_NAMES "${ZSTD_STATIC_LIB_NAME}" "lib${ZSTD_STATIC_LIB_NAME}")
|
||||
set(ZSTD_LIB_NAMES
|
||||
- "${CMAKE_STATIC_LIBRARY_PREFIX}${ZSTD_LIB_NAME_BASE}${ZSTD_STATIC_LIB_SUFFIX}")
|
||||
+ "zstd${ZSTD_STATIC_LIB_SUFFIX}"
|
||||
+ "libzstd${ZSTD_STATIC_LIB_SUFFIX}")
|
||||
endif()
|
||||
@@ -49,8 +49,8 @@ if(ZSTD_ROOT)
|
||||
|
||||
else()
|
||||
# Second, find via pkg_check_modules
|
||||
- pkg_check_modules(ZSTD_PC libzstd)
|
||||
- if(ZSTD_PC_FOUND)
|
||||
+ #pkg_check_modules(ZSTD_PC libzstd)
|
||||
+ if(0) #(ZSTD_PC_FOUND) # Disabled as sometimes incompatible with vcpkg on Linux and OSX
|
||||
set(ZSTD_INCLUDE_DIR "${ZSTD_PC_INCLUDEDIR}")
|
||||
|
||||
list(APPEND ZSTD_PC_LIBRARY_DIRS "${ZSTD_PC_LIBDIR}")
|
||||
diff --git a/cpp/cmake_modules/DefineOptions.cmake b/cpp/cmake_modules/DefineOptions.cmake
|
||||
index 3b229846c..da2c6d551 100644
|
||||
--- a/cpp/cmake_modules/DefineOptions.cmake
|
||||
+++ b/cpp/cmake_modules/DefineOptions.cmake
|
||||
@@ -297,6 +297,9 @@ if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
define_option(ARROW_PROTOBUF_USE_SHARED
|
||||
"Rely on Protocol Buffers shared libraries where relevant" ON)
|
||||
|
||||
+ define_option(ARROW_UTF8PROC_USE_SHARED
|
||||
+ "Rely on utf8proc shared libraries where relevant" ON)
|
||||
+
|
||||
define_option(ARROW_ZSTD_USE_SHARED "Rely on zstd shared libraries where relevant" ON)
|
||||
|
||||
define_option(ARROW_WITH_BACKTRACE "Build with backtrace support" ON)
|
||||
diff --git a/cpp/cmake_modules/Findutf8proc.cmake b/cpp/cmake_modules/Findutf8proc.cmake
|
||||
index ab9ae9f98..d3063827a 100644
|
||||
--- a/cpp/cmake_modules/Findutf8proc.cmake
|
||||
+++ b/cpp/cmake_modules/Findutf8proc.cmake
|
||||
@@ -15,11 +15,28 @@
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
+if(ARROW_UTF8PROC_USE_SHARED)
|
||||
+ set(UTF8PROC_LIB_NAMES)
|
||||
+ if(CMAKE_IMPORT_LIBRARY_SUFFIX)
|
||||
+ list(APPEND UTF8PROC_LIB_NAMES
|
||||
+ "${CMAKE_IMPORT_LIBRARY_PREFIX}utf8proc${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||
+ endif()
|
||||
+ list(APPEND UTF8PROC_LIB_NAMES
|
||||
+ "${CMAKE_SHARED_LIBRARY_PREFIX}utf8proc${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||
+else()
|
||||
+ if(MSVC AND NOT DEFINED UTF8PROC_MSVC_STATIC_LIB_SUFFIX)
|
||||
+ set(UTF8PROC_MSVC_STATIC_LIB_SUFFIX "_static")
|
||||
+ endif()
|
||||
+ set(UTF8PROC_STATIC_LIB_SUFFIX
|
||||
+ "${UTF8PROC_MSVC_STATIC_LIB_SUFFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||
+ set(UTF8PROC_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}utf8proc${UTF8PROC_STATIC_LIB_SUFFIX})
|
||||
+ set(UTF8PROC_LIB_NAMES "${UTF8PROC_STATIC_LIB_NAME}" "lib${UTF8PROC_STATIC_LIB_NAME}")
|
||||
+endif()
|
||||
+
|
||||
if(utf8proc_ROOT)
|
||||
find_library(
|
||||
UTF8PROC_LIB
|
||||
- NAMES utf8proc
|
||||
- "${CMAKE_SHARED_LIBRARY_PREFIX}utf8proc${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||
+ NAMES ${UTF8PROC_LIB_NAMES}
|
||||
PATHS ${utf8proc_ROOT}
|
||||
PATH_SUFFIXES ${LIB_PATH_SUFFIXES}
|
||||
NO_DEFAULT_PATH)
|
||||
@@ -28,12 +45,10 @@ if(utf8proc_ROOT)
|
||||
PATHS ${utf8proc_ROOT}
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES})
|
||||
-
|
||||
else()
|
||||
find_library(
|
||||
UTF8PROC_LIB
|
||||
- NAMES utf8proc
|
||||
- "${CMAKE_SHARED_LIBRARY_PREFIX}utf8proc${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||
+ NAMES ${UTF8PROC_LIB_NAMES}
|
||||
PATH_SUFFIXES ${LIB_PATH_SUFFIXES})
|
||||
find_path(UTF8PROC_INCLUDE_DIR NAMES utf8proc.h PATH_SUFFIXES ${INCLUDE_PATH_SUFFIXES})
|
||||
endif()
|
||||
@@ -47,5 +62,8 @@ if(UTF8PROC_FOUND OR utf8proc_FOUND)
|
||||
set_target_properties(utf8proc::utf8proc
|
||||
PROPERTIES IMPORTED_LOCATION "${UTF8PROC_LIB}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${UTF8PROC_INCLUDE_DIR}")
|
||||
+ if(NOT ARROW_UTF8PROC_USE_SHARED)
|
||||
+ set_target_properties(utf8proc::utf8proc
|
||||
+ PROPERTIES INTERFACE_COMPILER_DEFINITIONS "UTF8PROC_STATIC")
|
||||
+ endif()
|
||||
endif()
|
||||
-
|
||||
# First, find via if specified ZTD_ROOT
|
||||
|
@ -3,8 +3,8 @@ vcpkg_fail_port_install(ON_ARCH "x86" "arm" "arm64")
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO apache/arrow
|
||||
REF apache-arrow-1.0.1
|
||||
SHA512 46fedecaf7fa0ff0d8b4ac5f3d7bcbcb75ce4f65d272f775dedd61f091f975cf03fc55e91e46021df9872a82712ca9c9e4eb35414cf46c0f49a26f7a5a3dd50c
|
||||
REF apache-arrow-3.0.0
|
||||
SHA512 02645be0eaaaa69880ab911fc0b74665ebf52a35f9ad05210b23e7b42bcfbe3c3a4d44fa6c4c35af74764efbe528c2e0ebf0549ce5890c796be695ceb94e5606
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
all.patch
|
||||
@ -34,6 +34,9 @@ vcpkg_configure_cmake(
|
||||
-DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED}
|
||||
-DARROW_BROTLI_USE_SHARED=${ARROW_BUILD_SHARED} # This can be wrong in custom triplets
|
||||
-DARROW_GFLAGS_USE_SHARED=${ARROW_BUILD_SHARED} # This can be wrong in custom triplets
|
||||
-DARROW_LZ4_USE_SHARED=${ARROW_BUILD_SHARED} # This can be wrong in custom triplets
|
||||
-DARROW_SNAPPY_USE_SHARED=${ARROW_BUILD_SHARED} # This can be wrong in custom triplets
|
||||
-DARROW_THRIFT_USE_SHARED=OFF # vcpkg doesn't build Thrift as a shared library for the moment (2020/01/22).
|
||||
-DARROW_UTF8PROC_USE_SHARED=${ARROW_BUILD_SHARED} # This can be wrong in custom triplets
|
||||
-DARROW_ZSTD_USE_SHARED=${ARROW_BUILD_SHARED} # This can be wrong in custom triplets
|
||||
-DARROW_JEMALLOC=OFF
|
||||
|
@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "bc9cb096ffa223f2af620db18ed244d17e47ffe7",
|
||||
"version-string": "3.0.0",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "604537d50ab45ff96911b5330c51137ac5fc4040",
|
||||
"version-string": "1.0.1",
|
||||
|
@ -145,8 +145,8 @@
|
||||
"port-version": 3
|
||||
},
|
||||
"arrow": {
|
||||
"baseline": "1.0.1",
|
||||
"port-version": 2
|
||||
"baseline": "3.0.0",
|
||||
"port-version": 0
|
||||
},
|
||||
"ashes": {
|
||||
"baseline": "2020-10-21",
|
||||
|
Loading…
Reference in New Issue
Block a user