Skip to content

Commit

Permalink
GH-33851: [C++] Update bundled boost version (#33890)
Browse files Browse the repository at this point in the history
This PR updates the bundled version of Boost, as it was suggested by a maintainer of CRAN (R packaging) that the older version of boost might be responsible for an Arrow build failure on Fedora/clang (#33819).

Closes #33851.

The resulting tarball also has to be uploaded to https://apache.jfrog.io/ui/native/arrow/thirdparty/7.0.0/ (right?) to kick in and almost certainly needs to be tested through a round of CI. I'm not sure how to do either of those things but perhaps @ assignUser does?
* Closes: #33851

Authored-by: Dewey Dunnington <dewey@fishandwhistle.net>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
  • Loading branch information
paleolimbot authored Feb 7, 2023
1 parent 771c37a commit d1e5cb5
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 7 deletions.
11 changes: 7 additions & 4 deletions cpp/build-support/trim-boost.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,22 +24,22 @@
#
# To test building Arrow locally with the boost bundle this creates, add:
#
# set(BOOST_SOURCE_URL /path/to/arrow/cpp/build-support/boost_1_75_0/boost_1_75_0.tar.gz)
# set(BOOST_SOURCE_URL /path/to/arrow/cpp/build-support/boost_1_81_0/boost_1_81_0.tar.gz)
#
# to the beginning of the build_boost() macro in ThirdpartyToolchain.cmake,
#
# or set the env var ARROW_BOOST_URL before calling cmake, like:
#
# ARROW_BOOST_URL=/path/to/arrow/cpp/build-support/boost_1_75_0/boost_1_75_0.tar.gz cmake ...
# ARROW_BOOST_URL=/path/to/arrow/cpp/build-support/boost_1_81_0/boost_1_81_0.tar.gz cmake ...
#
# After running this script, upload the bundle to
# https://github.com/ursa-labs/thirdparty/releases/edit/latest
# https://apache.jfrog.io/artifactory/arrow/thirdparty/
# TODO(ARROW-6407) automate uploading to github

set -eu

# if version is not defined by the caller, set a default.
: ${BOOST_VERSION:=1.75.0}
: ${BOOST_VERSION:=1.81.0}
: ${BOOST_FILE:=boost_${BOOST_VERSION//./_}}
: ${BOOST_URL:=https://sourceforge.net/projects/boost/files/boost/${BOOST_VERSION}/${BOOST_FILE}.tar.gz}

Expand All @@ -66,6 +66,9 @@ fi
mkdir -p ${BOOST_FILE}
./dist/bin/bcp ${BOOST_LIBS} ${BOOST_FILE}

# These files are assumed by the thirdparty toolchain but are not copied by bcp
cp bootstrap.sh bootstrap.bat boostcpp.jam boost-build.jam Jamroot LICENSE_1_0.txt INSTALL ${BOOST_FILE}/

tar -czf ${BOOST_FILE}.tar.gz ${BOOST_FILE}/
# Resulting tarball is in ${BOOST_FILE}/${BOOST_FILE}.tar.gz

Expand Down
12 changes: 12 additions & 0 deletions cpp/cmake_modules/ThirdpartyToolchain.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -989,6 +989,18 @@ if(MSVC AND ARROW_USE_STATIC_CRT)
set(Boost_USE_STATIC_RUNTIME ON)
endif()
set(Boost_ADDITIONAL_VERSIONS
"1.81.0"
"1.81"
"1.80.0"
"1.80"
"1.79.0"
"1.79"
"1.78.0"
"1.78"
"1.77.0"
"1.77"
"1.76.0"
"1.76"
"1.75.0"
"1.75"
"1.74.0"
Expand Down
6 changes: 3 additions & 3 deletions cpp/thirdparty/versions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ ARROW_AWS_C_COMMON_BUILD_VERSION=v0.6.9
ARROW_AWS_C_COMMON_BUILD_SHA256_CHECKSUM=928a3e36f24d1ee46f9eec360ec5cebfe8b9b8994fe39d4fa74ff51aebb12717
ARROW_AWS_C_EVENT_STREAM_BUILD_VERSION=v0.1.5
ARROW_AWS_C_EVENT_STREAM_BUILD_SHA256_CHECKSUM=f1b423a487b5d6dca118bfc0d0c6cc596dc476b282258a3228e73a8f730422d4
ARROW_BOOST_BUILD_VERSION=1.75.0
ARROW_BOOST_BUILD_SHA256_CHECKSUM=267e04a7c0bfe85daf796dedc789c3a27a76707e1c968f0a2a87bb96331e2b61
ARROW_BOOST_BUILD_VERSION=1.81.0
ARROW_BOOST_BUILD_SHA256_CHECKSUM=9e0ffae35528c35f90468997bc8d99500bf179cbae355415a89a600c38e13574
ARROW_BROTLI_BUILD_VERSION=v1.0.9
ARROW_BROTLI_BUILD_SHA256_CHECKSUM=f9e8d81d0405ba66d181529af42a3354f838c939095ff99930da6aa9cdf6fe46
ARROW_BZIP2_BUILD_VERSION=1.0.8
Expand Down Expand Up @@ -107,7 +107,7 @@ DEPENDENCIES=(
"ARROW_AWS_CHECKSUMS_URL aws-checksums-${ARROW_AWS_CHECKSUMS_BUILD_VERSION}.tar.gz https://github.com/awslabs/aws-checksums/archive/${ARROW_AWS_CHECKSUMS_BUILD_VERSION}.tar.gz"
"ARROW_AWS_C_COMMON_URL aws-c-common-${ARROW_AWS_C_COMMON_BUILD_VERSION}.tar.gz https://github.com/awslabs/aws-c-common/archive/${ARROW_AWS_C_COMMON_BUILD_VERSION}.tar.gz"
"ARROW_AWS_C_EVENT_STREAM_URL aws-c-event-stream-${ARROW_AWS_C_EVENT_STREAM_BUILD_VERSION}.tar.gz https://github.com/awslabs/aws-c-event-stream/archive/${ARROW_AWS_C_EVENT_STREAM_BUILD_VERSION}.tar.gz"
"ARROW_BOOST_URL boost-${ARROW_BOOST_BUILD_VERSION}.tar.gz https://github.com/ursa-labs/thirdparty/releases/download/apache-arrow-7.0.0/boost_${ARROW_BOOST_BUILD_VERSION//./_}.tar.gz"
"ARROW_BOOST_URL boost-${ARROW_BOOST_BUILD_VERSION}.tar.gz https://apache.jfrog.io/artifactory/arrow/thirdparty/7.0.0/boost_${ARROW_BOOST_BUILD_VERSION//./_}.tar.gz"
"ARROW_BROTLI_URL brotli-${ARROW_BROTLI_BUILD_VERSION}.tar.gz https://github.com/google/brotli/archive/${ARROW_BROTLI_BUILD_VERSION}.tar.gz"
"ARROW_BZIP2_URL bzip2-${ARROW_BZIP2_BUILD_VERSION}.tar.gz https://sourceware.org/pub/bzip2/bzip2-${ARROW_BZIP2_BUILD_VERSION}.tar.gz"
"ARROW_CARES_URL cares-${ARROW_CARES_BUILD_VERSION}.tar.gz https://c-ares.haxx.se/download/c-ares-${ARROW_CARES_BUILD_VERSION}.tar.gz"
Expand Down

0 comments on commit d1e5cb5

Please sign in to comment.