This is an automated email from the ASF dual-hosted git repository.
wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push:
new 667c0e3 ARROW-5662: [C++] Add support for
BOOST_SOURCE=AUTO|BUNDLED|SYSTEM
667c0e3 is described below
commit 667c0e34526f276f8164601d55b70d08891cf019
Author: Sutou Kouhei <[email protected]>
AuthorDate: Thu Jun 20 09:59:13 2019 -0500
ARROW-5662: [C++] Add support for BOOST_SOURCE=AUTO|BUNDLED|SYSTEM
ARROW_BOOST_VENDORED is deprecated. Use BOOST_SOURCE=BUNDLED instead.
Author: Sutou Kouhei <[email protected]>
Closes #4623 from kou/cpp-boost-source and squashes the following commits:
8f1a014cd <Sutou Kouhei> Add support for BOOST_SOURCE=AUTO|BUNDLED|SYSTEM
---
.travis.yml | 1 -
ci/docker_build_cpp.sh | 2 +-
ci/travis_before_script_cpp.sh | 9 --
cpp/cmake_modules/BuildUtils.cmake | 4 -
cpp/cmake_modules/DefineOptions.cmake | 3 +-
cpp/cmake_modules/FindBoostAlt.cmake | 73 ++++++++++++
cpp/cmake_modules/ThirdpartyToolchain.cmake | 179 ++++++++++++----------------
cpp/src/parquet/CMakeLists.txt | 8 +-
dev/release/verify-release-candidate.sh | 6 +-
docker-compose.yml | 2 +-
docs/source/developers/cpp.rst | 9 +-
11 files changed, 162 insertions(+), 134 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index ca38431..b2c2724 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -268,7 +268,6 @@ matrix:
env:
- ARROW_TRAVIS_ORC=1
- ARROW_TRAVIS_GANDIVA=1
- - ARROW_TRAVIS_USE_VENDORED_BOOST=1
- ARROW_TRAVIS_PARQUET=1
- ARROW_TRAVIS_PLASMA=1
before_script:
diff --git a/ci/docker_build_cpp.sh b/ci/docker_build_cpp.sh
index 98c2c1a..471a732 100755
--- a/ci/docker_build_cpp.sh
+++ b/ci/docker_build_cpp.sh
@@ -37,7 +37,6 @@ cmake -GNinja \
-DARROW_WITH_BZ2=${ARROW_WITH_BZ2:-ON} \
-DARROW_WITH_ZSTD=${ARROW_WITH_ZSTD:-ON} \
-DARROW_BUILD_BENCHMARKS=${ARROW_BUILD_BENCHMARKS:-ON} \
- -DARROW_BOOST_VENDORED=${ARROW_BOOST_VENDORED:-OFF} \
-DARROW_FLIGHT=${ARROW_FLIGHT:-ON} \
-DARROW_ORC=${ARROW_ORC:-ON} \
-DARROW_PLASMA=${ARROW_PLASMA:-ON} \
@@ -55,6 +54,7 @@ cmake -GNinja \
-DARROW_TEST_LINKAGE=${ARROW_TEST_LINKAGE:-shared} \
-DPARQUET_REQUIRE_ENCRYPTION=${ARROW_WITH_OPENSSL:-ON} \
-DCMAKE_CXX_FLAGS=$CXXFLAGS \
+ -DBOOST_SOURCE=${ARROW_BOOST_SOURCE:-AUTO} \
-Duriparser_SOURCE=AUTO \
${CMAKE_ARGS} \
${source_dir}
diff --git a/ci/travis_before_script_cpp.sh b/ci/travis_before_script_cpp.sh
index 0dca5e1..b0917d8 100755
--- a/ci/travis_before_script_cpp.sh
+++ b/ci/travis_before_script_cpp.sh
@@ -141,10 +141,6 @@ if [ "$ARROW_TRAVIS_VERBOSE" == "1" ]; then
CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS -DARROW_VERBOSE_THIRDPARTY_BUILD=ON"
fi
-if [ "$ARROW_TRAVIS_VENDORED_BOOST" == "1" ]; then
- CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS -DARROW_BOOST_VENDORED=ON"
-fi
-
if [ "$ARROW_TRAVIS_STATIC_BOOST" == "1" ]; then
CMAKE_COMMON_FLAGS="$CMAKE_COMMON_FLAGS -DARROW_BOOST_USE_SHARED=OFF"
fi
@@ -173,11 +169,6 @@ if [ $TRAVIS_OS_NAME == "linux" ]; then
-DARROW_CXXFLAGS="$ARROW_CXXFLAGS" \
$ARROW_CPP_DIR
else
- if [ "$using_homebrew" = "yes" ]; then
- # build against homebrew's boost if we're using it
- export BOOST_ROOT=$(brew --prefix boost)
- export THRIFT_HOME=$(brew --prefix thrift)
- fi
cmake $CMAKE_COMMON_FLAGS \
$CMAKE_OSX_FLAGS \
-DCMAKE_BUILD_TYPE=$ARROW_BUILD_TYPE \
diff --git a/cpp/cmake_modules/BuildUtils.cmake
b/cpp/cmake_modules/BuildUtils.cmake
index a5fd31c..4ef2948 100644
--- a/cpp/cmake_modules/BuildUtils.cmake
+++ b/cpp/cmake_modules/BuildUtils.cmake
@@ -44,10 +44,6 @@ function(ADD_THIRDPARTY_LIB LIB_NAME)
endif()
if(ARG_STATIC_LIB AND ARG_SHARED_LIB)
- if(NOT ARG_STATIC_LIB)
- message(FATAL_ERROR "No static or shared library provided for
${LIB_NAME}")
- endif()
-
set(AUG_LIB_NAME "${LIB_NAME}_static")
add_library(${AUG_LIB_NAME} STATIC IMPORTED)
set_target_properties(${AUG_LIB_NAME}
diff --git a/cpp/cmake_modules/DefineOptions.cmake
b/cpp/cmake_modules/DefineOptions.cmake
index 461d0f4..ece5145 100644
--- a/cpp/cmake_modules/DefineOptions.cmake
+++ b/cpp/cmake_modules/DefineOptions.cmake
@@ -215,7 +215,8 @@ if("${CMAKE_SOURCE_DIR}" STREQUAL
"${CMAKE_CURRENT_SOURCE_DIR}")
define_option(ARROW_BOOST_USE_SHARED "Rely on boost shared libraries where
relevant" ON)
define_option(ARROW_BOOST_VENDORED "Use vendored Boost instead of existing
Boost. \
-Note that this requires linking Boost statically" OFF)
+Note that this requires linking Boost statically. \
+Deprecated. Use BOOST_SOURCE=BUNDLED instead." OFF)
define_option(ARROW_PROTOBUF_USE_SHARED
"Rely on Protocol Buffers shared libraries where relevant" ON)
diff --git a/cpp/cmake_modules/FindBoostAlt.cmake
b/cpp/cmake_modules/FindBoostAlt.cmake
new file mode 100644
index 0000000..978caff
--- /dev/null
+++ b/cpp/cmake_modules/FindBoostAlt.cmake
@@ -0,0 +1,73 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+if(DEFINED ENV{BOOST_ROOT} OR DEFINED BOOST_ROOT)
+ # In older versions of CMake (such as 3.2), the system paths for Boost will
+ # be looked in first even if we set $BOOST_ROOT or pass -DBOOST_ROOT
+ set(Boost_NO_SYSTEM_PATHS ON)
+endif()
+
+set(BoostAlt_FIND_VERSION_OPTIONS)
+if(BoostAlt_FIND_VERSION)
+ list(APPEND BoostAlt_FIND_VERSION_OPTIONS ${BoostAlt_FIND_VERSION})
+endif()
+if(BoostAlt_FIND_REQUIRED)
+ list(APPEND BoostAlt_FIND_VERSION_OPTIONS REQUIRED)
+endif()
+if(BoostAlt_FIND_QUIETLY)
+ list(APPEND BoostAlt_FIND_VERSION_OPTIONS QUIET)
+endif()
+
+if(ARROW_BOOST_USE_SHARED)
+ # Find shared Boost libraries.
+ set(Boost_USE_STATIC_LIBS OFF)
+ set(BUILD_SHARED_LIBS_KEEP ${BUILD_SHARED_LIBS})
+ set(BUILD_SHARED_LIBS ON)
+
+ if(ARROW_BOOST_HEADER_ONLY)
+ find_package(Boost ${BoostAlt_FIND_VERSION_OPTIONS})
+ else()
+ find_package(Boost ${BoostAlt_FIND_VERSION_OPTIONS}
+ COMPONENTS regex system filesystem)
+ endif()
+ set(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_KEEP})
+ unset(BUILD_SHARED_LIBS_KEEP)
+else()
+ # Find static boost headers and libs
+ # TODO Differentiate here between release and debug builds
+ set(Boost_USE_STATIC_LIBS ON)
+ if(ARROW_BOOST_HEADER_ONLY)
+ find_package(Boost ${BoostAlt_FIND_VERSION_OPTIONS})
+ else()
+ find_package(Boost ${BoostAlt_FIND_VERSION_OPTIONS}
+ COMPONENTS regex system filesystem)
+ endif()
+endif()
+
+if(Boost_FOUND)
+ set(BoostAlt_FOUND ON)
+ if(MSVC)
+ # disable autolinking in boost
+ add_definitions(-DBOOST_ALL_NO_LIB)
+ if(ARROW_BOOST_USE_SHARED)
+ # force all boost libraries to dynamic link
+ add_definitions(-DBOOST_ALL_DYN_LINK)
+ endif()
+ endif()
+else()
+ set(BoostAlt_FOUND OFF)
+endif()
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake
b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index d37e440..e323668 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -114,6 +114,12 @@ if(ARROW_PACKAGE_PREFIX)
endif()
endif()
+if(ARROW_BOOST_VENDORED AND "${BOOST_SOURCE}" STREQUAL "")
+ message(
+ DEPRECATION "ARROW_BOOST_VENDORED is deprecated. Use BOOST_SOURCE=BUNDLED
instead.")
+ set(BOOST_SOURCE "BUNDLED")
+endif()
+
# For each dependency, set dependency source to global default, if unset
foreach(DEPENDENCY ${ARROW_THIRDPARTY_DEPENDENCIES})
if("${${DEPENDENCY}_SOURCE}" STREQUAL "")
@@ -478,69 +484,34 @@ find_package(Threads REQUIRED)
# ----------------------------------------------------------------------
# Add Boost dependencies (code adapted from Apache Kudu)
-if(ARROW_FLIGHT AND ARROW_BUILD_TESTS)
- set(ARROW_BOOST_REQUIRED_VERSION "1.64")
-else()
- set(ARROW_BOOST_REQUIRED_VERSION "1.58")
-endif()
-
-set(Boost_USE_MULTITHREADED ON)
-if(MSVC AND ARROW_USE_STATIC_CRT)
- set(Boost_USE_STATIC_RUNTIME ON)
-endif()
-set(Boost_ADDITIONAL_VERSIONS
- "1.70.0"
- "1.70"
- "1.69.0"
- "1.69"
- "1.68.0"
- "1.68"
- "1.67.0"
- "1.67"
- "1.66.0"
- "1.66"
- "1.65.0"
- "1.65"
- "1.64.0"
- "1.64"
- "1.63.0"
- "1.63"
- "1.62.0"
- "1.61"
- "1.61.0"
- "1.62"
- "1.60.0"
- "1.60")
-
-if(ARROW_BOOST_VENDORED)
+macro(build_boost)
set(BOOST_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/boost_ep-prefix/src/boost_ep")
# This is needed by the thrift_ep build
set(BOOST_ROOT ${BOOST_PREFIX})
- set(BOOST_LIB_DIR "${BOOST_PREFIX}/stage/lib")
- set(BOOST_BUILD_LINK "static")
- set(
- BOOST_STATIC_SYSTEM_LIBRARY
-
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_system${CMAKE_STATIC_LIBRARY_SUFFIX}"
- )
- set(
- BOOST_STATIC_FILESYSTEM_LIBRARY
-
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_filesystem${CMAKE_STATIC_LIBRARY_SUFFIX}"
- )
- set(
- BOOST_STATIC_REGEX_LIBRARY
-
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_regex${CMAKE_STATIC_LIBRARY_SUFFIX}"
- )
- set(BOOST_SYSTEM_LIBRARY boost_system_static)
- set(BOOST_FILESYSTEM_LIBRARY boost_filesystem_static)
- set(BOOST_REGEX_LIBRARY boost_regex_static)
-
if(ARROW_BOOST_HEADER_ONLY)
set(BOOST_BUILD_PRODUCTS)
set(BOOST_CONFIGURE_COMMAND "")
set(BOOST_BUILD_COMMAND "")
else()
+ set(BOOST_LIB_DIR "${BOOST_PREFIX}/stage/lib")
+ set(BOOST_BUILD_LINK "static")
+ set(
+ BOOST_STATIC_SYSTEM_LIBRARY
+
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_system${CMAKE_STATIC_LIBRARY_SUFFIX}"
+ )
+ set(
+ BOOST_STATIC_FILESYSTEM_LIBRARY
+
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_filesystem${CMAKE_STATIC_LIBRARY_SUFFIX}"
+ )
+ set(
+ BOOST_STATIC_REGEX_LIBRARY
+
"${BOOST_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}boost_regex${CMAKE_STATIC_LIBRARY_SUFFIX}"
+ )
+ set(BOOST_SYSTEM_LIBRARY boost_system_static)
+ set(BOOST_FILESYSTEM_LIBRARY boost_filesystem_static)
+ set(BOOST_REGEX_LIBRARY boost_regex_static)
set(BOOST_BUILD_PRODUCTS ${BOOST_STATIC_SYSTEM_LIBRARY}
${BOOST_STATIC_FILESYSTEM_LIBRARY}
${BOOST_STATIC_REGEX_LIBRARY})
@@ -559,8 +530,6 @@ if(ARROW_BOOST_VENDORED)
add_thirdparty_lib(boost_filesystem STATIC_LIB
"${BOOST_STATIC_FILESYSTEM_LIBRARY}")
add_thirdparty_lib(boost_regex STATIC_LIB "${BOOST_STATIC_REGEX_LIBRARY}")
-
- set(ARROW_BOOST_LIBS ${BOOST_SYSTEM_LIBRARY} ${BOOST_FILESYSTEM_LIBRARY})
endif()
externalproject_add(boost_ep
URL ${BOOST_SOURCE_URL}
@@ -572,58 +541,66 @@ if(ARROW_BOOST_VENDORED)
set(Boost_INCLUDE_DIR "${BOOST_PREFIX}")
set(Boost_INCLUDE_DIRS "${BOOST_INCLUDE_DIR}")
add_dependencies(toolchain boost_ep)
-else()
- if(MSVC)
- # disable autolinking in boost
- add_definitions(-DBOOST_ALL_NO_LIB)
- endif()
+endmacro()
- if(DEFINED ENV{BOOST_ROOT} OR DEFINED BOOST_ROOT)
- # In older versions of CMake (such as 3.2), the system paths for Boost will
- # be looked in first even if we set $BOOST_ROOT or pass -DBOOST_ROOT
- set(Boost_NO_SYSTEM_PATHS ON)
- endif()
+if(ARROW_FLIGHT AND ARROW_BUILD_TESTS)
+ set(ARROW_BOOST_REQUIRED_VERSION "1.64")
+else()
+ set(ARROW_BOOST_REQUIRED_VERSION "1.58")
+endif()
- if(ARROW_BOOST_USE_SHARED)
- # Find shared Boost libraries.
- set(Boost_USE_STATIC_LIBS OFF)
- set(BUILD_SHARED_LIBS_KEEP ${BUILD_SHARED_LIBS})
- set(BUILD_SHARED_LIBS ON)
+set(Boost_USE_MULTITHREADED ON)
+if(MSVC AND ARROW_USE_STATIC_CRT)
+ set(Boost_USE_STATIC_RUNTIME ON)
+endif()
+set(Boost_ADDITIONAL_VERSIONS
+ "1.70.0"
+ "1.70"
+ "1.69.0"
+ "1.69"
+ "1.68.0"
+ "1.68"
+ "1.67.0"
+ "1.67"
+ "1.66.0"
+ "1.66"
+ "1.65.0"
+ "1.65"
+ "1.64.0"
+ "1.64"
+ "1.63.0"
+ "1.63"
+ "1.62.0"
+ "1.61"
+ "1.61.0"
+ "1.62"
+ "1.60.0"
+ "1.60")
- if(MSVC)
- # force all boost libraries to dynamic link
- add_definitions(-DBOOST_ALL_DYN_LINK)
- endif()
+if(BOOST_SOURCE STREQUAL "AUTO")
+ find_package(BoostAlt ${ARROW_BOOST_REQUIRED_VERSION})
+ if(NOT BoostAlt_FOUND)
+ build_boost()
+ endif()
+elseif(BOOST_SOURCE STREQUAL "BUNDLED")
+ build_boost()
+elseif(BOOST_SOURCE STREQUAL "SYSTEM")
+ find_package(BoostAlt ${ARROW_BOOST_REQUIRED_VERSION} REQUIRED)
+endif()
- if(ARROW_BOOST_HEADER_ONLY)
- find_package(Boost ${ARROW_BOOST_REQUIRED_VERSION} REQUIRED)
- else()
- find_package(Boost ${ARROW_BOOST_REQUIRED_VERSION}
- COMPONENTS regex system filesystem
- REQUIRED)
- set(BOOST_SYSTEM_LIBRARY Boost::system)
- set(BOOST_FILESYSTEM_LIBRARY Boost::filesystem)
- set(BOOST_REGEX_LIBRARY Boost::regex)
- set(ARROW_BOOST_LIBS ${BOOST_SYSTEM_LIBRARY} ${BOOST_FILESYSTEM_LIBRARY})
- endif()
- set(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_KEEP})
- unset(BUILD_SHARED_LIBS_KEEP)
+if(ARROW_BOOST_HEADER_ONLY)
+ set(ARROW_BOOST_LIBS)
+else()
+ if(TARGET Boost::system)
+ set(BOOST_SYSTEM_LIBRARY Boost::system)
+ set(BOOST_FILESYSTEM_LIBRARY Boost::filesystem)
+ set(BOOST_REGEX_LIBRARY Boost::regex)
else()
- # Find static boost headers and libs
- # TODO Differentiate here between release and debug builds
- set(Boost_USE_STATIC_LIBS ON)
- if(ARROW_BOOST_HEADER_ONLY)
- find_package(Boost ${ARROW_BOOST_REQUIRED_VERSION} REQUIRED)
- else()
- find_package(Boost ${ARROW_BOOST_REQUIRED_VERSION}
- COMPONENTS regex system filesystem
- REQUIRED)
- set(BOOST_SYSTEM_LIBRARY Boost::system)
- set(BOOST_FILESYSTEM_LIBRARY Boost::filesystem)
- set(BOOST_REGEX_LIBRARY Boost::regex)
- set(ARROW_BOOST_LIBS ${BOOST_SYSTEM_LIBRARY} ${BOOST_FILESYSTEM_LIBRARY})
- endif()
+ set(BOOST_SYSTEM_LIBRARY boost_system_static)
+ set(BOOST_FILESYSTEM_LIBRARY boost_filesystem_static)
+ set(BOOST_REGEX_LIBRARY boost_regex_static)
endif()
+ set(ARROW_BOOST_LIBS ${BOOST_SYSTEM_LIBRARY} ${BOOST_FILESYSTEM_LIBRARY})
endif()
message(STATUS "Boost include dir: " ${Boost_INCLUDE_DIR})
diff --git a/cpp/src/parquet/CMakeLists.txt b/cpp/src/parquet/CMakeLists.txt
index 3090fa3..019f59f 100644
--- a/cpp/src/parquet/CMakeLists.txt
+++ b/cpp/src/parquet/CMakeLists.txt
@@ -93,10 +93,12 @@ else()
set(ARROW_LIBRARIES_FOR_STATIC_TESTS arrow_testing_shared arrow_shared)
endif()
-set(PARQUET_BOOST_LINK_LIBS ${BOOST_REGEX_LIBRARY})
-
+set(PARQUET_BOOST_LINK_LIBS)
+if(NOT ARROW_BOOST_HEADER_ONLY)
+ list(APPEND PARQUET_BOOST_LINK_LIBS ${BOOST_REGEX_LIBRARY})
+endif()
if(MSVC)
- set(PARQUET_BOOST_LINK_LIBS ${PARQUET_BOOST_LINK_LIBS}
${BOOST_SYSTEM_LIBRARY})
+ list(APPEND PARQUET_BOOST_LINK_LIBS ${BOOST_SYSTEM_LIBRARY})
endif()
set(PARQUET_MIN_TEST_LIBS GTest::Main GTest::GTest)
diff --git a/dev/release/verify-release-candidate.sh
b/dev/release/verify-release-candidate.sh
index a7d2013..80daa42 100755
--- a/dev/release/verify-release-candidate.sh
+++ b/dev/release/verify-release-candidate.sh
@@ -26,8 +26,7 @@
# - nodejs >= 6.0.0 (best way is to use nvm)
#
# If using a non-system Boost, set BOOST_ROOT and add Boost libraries to
-# LD_LIBRARY_PATH. If your system Boost is too old for the C++ libraries, then
-# set $ARROW_BOOST_VENDORED to "ON" or "1"
+# LD_LIBRARY_PATH.
case $# in
3) ARTIFACT="$1"
@@ -50,8 +49,6 @@ set -o pipefail
SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]:-$0}")" && pwd)"
-ARROW_BOOST_VENDORED=${ARROW_BOOST_VENDORED:=OFF}
-
ARROW_DIST_URL='https://dist.apache.org/repos/dist/dev/arrow'
detect_cuda() {
@@ -245,7 +242,6 @@ ${ARROW_CMAKE_OPTIONS}
-DARROW_GANDIVA=ON
-DARROW_PARQUET=ON
-DARROW_BOOST_USE_SHARED=ON
--DARROW_BOOST_VENDORED=$ARROW_BOOST_VENDORED
-DCMAKE_BUILD_TYPE=release
-DARROW_BUILD_TESTS=ON
-DARROW_CUDA=${ARROW_CUDA}
diff --git a/docker-compose.yml b/docker-compose.yml
index 40b1c59..e986c11 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -235,7 +235,7 @@ services:
dockerfile: cpp/Dockerfile.ubuntu-xenial
environment:
PARQUET_TEST_DATA: /arrow/cpp/submodules/parquet-testing/data
- ARROW_BOOST_VENDORED: "OFF"
+ ARROW_BOOST_SOURCE: "SYSTEM"
ARROW_FLIGHT: "OFF"
volumes: *ubuntu-xenial-volumes
diff --git a/docs/source/developers/cpp.rst b/docs/source/developers/cpp.rst
index 9e5013e..e29583b 100644
--- a/docs/source/developers/cpp.rst
+++ b/docs/source/developers/cpp.rst
@@ -41,8 +41,7 @@ Building requires:
sufficient. For Windows, at least Visual Studio 2015 is required.
* CMake 3.2 or higher
* Boost 1.58 or higher, though some unit tests require 1.64 or
- newer. Use ``-DARROW_BOOST_VENDORED=ON`` when invoking CMake to have
- the Arrow build system automatically build a recent version of Boost.
+ newer.
* ``bison`` and ``flex`` (for building Apache Thrift from source only, an
Apache Parquet dependency.)
@@ -292,12 +291,6 @@ non-standard location, you can specify it by passing
``-DBOOST_ROOT=$MY_BOOST_ROOT`` or setting the ``BOOST_ROOT`` environment
variable.
-Unlike most of the other dependencies, if Boost is not found by the build
-system it will not be built automatically from source. To opt-in to a vendored
-Boost build, pass ``-DARROW_BOOST_VENDORED=ON``. This automatically sets the
-option ``-DARROW_BOOST_USE_SHARED=OFF`` to statically-link Boost into the
-produced libraries and executables.
-
Offline Builds
~~~~~~~~~~~~~~