diff options
author | Guillaume Horel | 2018-11-21 11:13:37 -0500 |
---|---|---|
committer | Guillaume Horel | 2018-11-21 11:13:37 -0500 |
commit | 269f28c0bb16fee17096934502576748bd2120a3 (patch) | |
tree | 650d39a1528e24f90de7fc2fad62dc80d0fbb8ac | |
parent | bc712b583fa99cd20e7c18dde109b8299cd20d25 (diff) | |
download | aur-269f28c0bb16fee17096934502576748bd2120a3.tar.gz |
version bump
-rw-r--r-- | .SRCINFO | 13 | ||||
-rw-r--r-- | 2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch | 56 | ||||
-rw-r--r-- | PKGBUILD | 25 | ||||
-rw-r--r-- | f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch | 32 | ||||
-rw-r--r-- | fix-linking.patch | 15 |
5 files changed, 132 insertions, 9 deletions
@@ -1,6 +1,6 @@ pkgbase = arrow pkgdesc = A columnar in-memory analytics layer for big data. - pkgver = 0.11.0 + pkgver = 0.11.1 pkgrel = 1 url = https://arrow.apache.org arch = x86_64 @@ -10,6 +10,7 @@ pkgbase = arrow makedepends = cmake makedepends = boost makedepends = brotli + makedepends = double-conversion makedepends = flatbuffers-static makedepends = google-glog-static makedepends = lz4-static @@ -21,8 +22,14 @@ pkgbase = arrow depends = rapidjson provides = parquet-cpp conflicts = parquet-cpp - source = https://github.com/apache/arrow/archive/apache-arrow-0.11.0.tar.gz - sha256sums = 0ac629a7775d86108e403eb66d9f1a3d3bdd6b3a497a86228aa4e8143364b7cc + source = https://github.com/apache/arrow/archive/apache-arrow-0.11.1.tar.gz + source = 2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch + source = f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch + source = fix-linking.patch + sha256sums = 3219c4e87e7cf979017f0cc5bc5dd6a3611d0fc750e821911fab998599dc125b + sha256sums = d5170d6d7ad24cf850baa2c60e26a43e089c18046b13c01e071745a23c239d36 + sha256sums = 4a839e1229e1c4369948ebb02e78a15bf77dcf1bd03ace3aa3002ba35c5cb659 + sha256sums = ce8aab9d77bc2d8fe1e4fad0221fd19abe190e8139fbd73b939f7404ed6f1b43 pkgname = arrow diff --git a/2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch b/2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch new file mode 100644 index 000000000000..e8487563f3da --- /dev/null +++ b/2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch @@ -0,0 +1,56 @@ +From 2928468ef665e106339fcc1161a9c1e1ebcfc2a3 Mon Sep 17 00:00:00 2001 +From: Dmitry Kalinkin <dmitry.kalinkin@gmail.com> +Date: Tue, 9 Oct 2018 13:57:30 +0200 +Subject: [PATCH] ARROW-3467: [C++] Fix building against external + double-conversion + +Author: Dmitry Kalinkin <dmitry.kalinkin@gmail.com> + +Closes #2728 from veprbl/pr/ARROW-3467 and squashes the following commits: + +1ce23de8 <Dmitry Kalinkin> ARROW-3467: remove indirection by renaming external double-conversion target to double-conversion::double-conversion +595c62c1 <Dmitry Kalinkin> ARROW-3467: double-conversion 3.1.1+ uses double-conversion:: prefix for CMake target name +--- + cpp/CMakeLists.txt | 4 ++-- + cpp/cmake_modules/ThirdpartyToolchain.cmake | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt +index 4448b989e3..40575a7d8b 100644 +--- a/cpp/CMakeLists.txt ++++ b/cpp/CMakeLists.txt +@@ -615,7 +615,7 @@ endif(UNIX) + set(ARROW_LINK_LIBS) + + # Libraries to link statically with libarrow.so +-set(ARROW_STATIC_LINK_LIBS double-conversion) ++set(ARROW_STATIC_LINK_LIBS double-conversion::double-conversion) + + if (ARROW_WITH_BROTLI) + SET(ARROW_STATIC_LINK_LIBS +@@ -694,7 +694,7 @@ else () + set(ARROW_MIN_TEST_LIBS + arrow_shared + ${ARROW_LINK_LIBS} +- double-conversion ++ double-conversion::double-conversion + ${BOOST_SYSTEM_LIBRARY} + ${BOOST_FILESYSTEM_LIBRARY} + ${BOOST_REGEX_LIBRARY} +diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake +index e6c7f7828f..d8142293ba 100644 +--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake ++++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake +@@ -489,10 +489,10 @@ else() + endif() + + include_directories(SYSTEM ${DOUBLE_CONVERSION_INCLUDE_DIR}) +-ADD_THIRDPARTY_LIB(double-conversion +- STATIC_LIB ${DOUBLE_CONVERSION_STATIC_LIB}) + + if (DOUBLE_CONVERSION_VENDORED) ++ ADD_THIRDPARTY_LIB(double-conversion::double-conversion ++ STATIC_LIB ${DOUBLE_CONVERSION_STATIC_LIB}) + add_dependencies(arrow_dependencies double-conversion_ep) + endif() + @@ -1,7 +1,7 @@ # Maintainer: Guillaume Horel <guillaume.horel@gmail.com> pkgname='arrow' -pkgver=0.11.0 +pkgver=0.11.1 pkgrel=1 pkgdesc="A columnar in-memory analytics layer for big data." arch=('x86_64') @@ -12,15 +12,28 @@ checkdepends=('gflags') optdepends=() provides=('parquet-cpp') conflicts=('parquet-cpp') -makedepends=('apache-orc' 'cmake' 'boost' 'brotli' 'flatbuffers-static' 'google-glog-static' 'lz4-static' 'protobuf-static' 'zlib-static' 'zstd-static' 'snappy-static') -source=("https://github.com/apache/arrow/archive/apache-arrow-$pkgver.tar.gz") -sha256sums=('0ac629a7775d86108e403eb66d9f1a3d3bdd6b3a497a86228aa4e8143364b7cc') +makedepends=('apache-orc' 'cmake' 'boost' 'brotli' 'double-conversion' 'flatbuffers-static' 'google-glog-static' 'lz4-static' 'protobuf-static' 'zlib-static' 'zstd-static' 'snappy-static') +source=("https://github.com/apache/arrow/archive/apache-arrow-$pkgver.tar.gz" +"2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch" +"f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch" +"fix-linking.patch") +sha256sums=('3219c4e87e7cf979017f0cc5bc5dd6a3611d0fc750e821911fab998599dc125b' + 'd5170d6d7ad24cf850baa2c60e26a43e089c18046b13c01e071745a23c239d36' + '4a839e1229e1c4369948ebb02e78a15bf77dcf1bd03ace3aa3002ba35c5cb659' + 'ce8aab9d77bc2d8fe1e4fad0221fd19abe190e8139fbd73b939f7404ed6f1b43') + +prepare(){ + cd "${srcdir}/$pkgname-apache-$pkgname-$pkgver" + patch -p1 < ../fix-linking.patch + patch -p1 < ../f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch + patch -p1 < ../2928468ef665e106339fcc1161a9c1e1ebcfc2a3.patch +} build(){ cd "$srcdir" mkdir -p build cd "$srcdir/build" - ARROW_BUILD_TOOLCHAIN=/usr ORC_HOME=/usr cmake \ + ARROW_BUILD_TOOLCHAIN=/usr ORC_HOME=/usr DOUBLE_CONVERSION_HOME=/usr cmake \ ../$pkgname-apache-$pkgname-$pkgver/cpp -DARROW_PARQUET=ON \ -DARROW_PYTHON=ON \ -DCMAKE_BUILD_TYPE=Release \ @@ -33,7 +46,7 @@ build(){ -DARROW_PLASMA=ON \ -DARROW_TENSORFLOW=ON \ -DARROW_USE_SSE=ON - make + make VERBOSE=1 } package(){ diff --git a/f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch b/f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch new file mode 100644 index 000000000000..cd8784e64460 --- /dev/null +++ b/f4f62699e5d5b821e83dc2f902d486cf5c2b2755.patch @@ -0,0 +1,32 @@ +From f4f62699e5d5b821e83dc2f902d486cf5c2b2755 Mon Sep 17 00:00:00 2001 +From: Antoine Pitrou <antoine@python.org> +Date: Tue, 9 Oct 2018 09:00:02 -0400 +Subject: [PATCH] ARROW-3466: [C++] Avoid leaking protobuf symbols + +Our linker script hides "google::*" symbols exported from various C++ modules, but that isn't enough to actually hide all symbols. Some symbols (vtables, destructors, "guard variables"...) aren't hidden. + +The ORC library links protobuf statically, and we link ORC statically. So we ended up exporting protobuf symbols. When linking another protobuf instance dynamically (like tensorflow does), this can wreak havoc. Hiding all symbols fixes the issue. + +Author: Antoine Pitrou <antoine@python.org> + +Closes #2731 from pitrou/ARROW-3466-protobuf-symbol-leak and squashes the following commits: + +0aa4648aa <Antoine Pitrou> ARROW-3466: Avoid leaking protobuf symbols +--- + cpp/src/arrow/symbols.map | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/cpp/src/arrow/symbols.map b/cpp/src/arrow/symbols.map +index 69717f089d..96faf596d5 100644 +--- a/cpp/src/arrow/symbols.map ++++ b/cpp/src/arrow/symbols.map +@@ -62,6 +62,9 @@ + je_arrow_*; + # ORC destructors + _ZThn8_N3orc*; ++ # Protobuf symbols that aren't hidden by the C++ section below ++ # (destructors, vtables, other stuff) ++ *N6google8protobuf*; + + extern "C++" { + # devtoolset or -static-libstdc++ - the Red Hat devtoolset statically diff --git a/fix-linking.patch b/fix-linking.patch new file mode 100644 index 000000000000..073c9bb06bf5 --- /dev/null +++ b/fix-linking.patch @@ -0,0 +1,15 @@ +diff -urN arrow-apache-arrow-0.11.0-orig/cpp/CMakeLists.txt arrow-apache-arrow-0.11.0/cpp/CMakeLists.txt +--- arrow-apache-arrow-0.11.0-orig/cpp/CMakeLists.txt 2018-10-11 10:18:19.912126993 -0400 ++++ arrow-apache-arrow-0.11.0/cpp/CMakeLists.txt 2018-10-11 10:18:41.159412003 -0400 +@@ -646,8 +646,9 @@ + + if (ARROW_ORC) + SET(ARROW_STATIC_LINK_LIBS +- ${ARROW_STATIC_LINK_LIBS} +- orc) ++ orc ${ARROW_STATIC_LINK_LIBS} ++ ) + endif() ++ message(STATUS ${ARROW_STATIC_LINK_LIBS}) + + if (ARROW_USE_GLOG) |