From deb0c72b5c876345908014ce0bf67619ec01e600 Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 13 Jul 2021 10:54:35 +0000 Subject: [PATCH 01/68] Make dependency source configurable --- r/inst/build_arrow_static.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index fdd99ca52ef..a4e34b0c6c8 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -45,6 +45,12 @@ else ARROW_DEFAULT_PARAM="OFF" fi +if [ "$DEPENDENCY_SOURCE" = "AUTO" ]; then + ARROW_DEPENDENCY_SOURCE="AUTO" +else + ARROW_DEPENDENCY_SOURCE="BUNDLED" +fi + mkdir -p "${BUILD_DIR}" pushd "${BUILD_DIR}" ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ @@ -54,7 +60,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -DARROW_COMPUTE=ON \ -DARROW_CSV=ON \ -DARROW_DATASET=${ARROW_DATASET:-ON} \ - -DARROW_DEPENDENCY_SOURCE=BUNDLED \ + -DARROW_DEPENDENCY_SOURCE={$ARROW_DEPENDENCY_SOURCE} \ -DARROW_FILESYSTEM=ON \ -DARROW_JEMALLOC=${ARROW_JEMALLOC:-$ARROW_DEFAULT_PARAM} \ -DARROW_MIMALLOC=${ARROW_MIMALLOC:-ON} \ From 9321021029608e98aefd13a1218ca270bd18e6a3 Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 13 Jul 2021 12:00:51 +0000 Subject: [PATCH 02/68] Move $ prefix to right place --- r/inst/build_arrow_static.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index a4e34b0c6c8..683fe3672dd 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -60,7 +60,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -DARROW_COMPUTE=ON \ -DARROW_CSV=ON \ -DARROW_DATASET=${ARROW_DATASET:-ON} \ - -DARROW_DEPENDENCY_SOURCE={$ARROW_DEPENDENCY_SOURCE} \ + -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE} \ -DARROW_FILESYSTEM=ON \ -DARROW_JEMALLOC=${ARROW_JEMALLOC:-$ARROW_DEFAULT_PARAM} \ -DARROW_MIMALLOC=${ARROW_MIMALLOC:-ON} \ From c6c3deaf15033692cbeb748205483a426133e3ac Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 13 Jul 2021 12:08:59 +0000 Subject: [PATCH 03/68] Check if pkg-config installed before allowing DEPENDENCY_SOURCE="AUTO" --- r/inst/build_arrow_static.sh | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 683fe3672dd..793ed1097ac 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -45,8 +45,15 @@ else ARROW_DEFAULT_PARAM="OFF" fi -if [ "$DEPENDENCY_SOURCE" = "AUTO" ]; then - ARROW_DEPENDENCY_SOURCE="AUTO" +if [ "$DEPENDENCY_SOURCE" = "AUTO"]; then + pkg-config --version >/dev/null 2>&1 + if [ $? -eq 0 ]; then + ARROW_DEPENDENCY_SOURCE="AUTO" + else + ARROW_DEPENDENCY_SOURCE="BUNDLED" + echo "**** Warning: DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not detected" + echo "**** Using bundled dependencies instead" + fi else ARROW_DEPENDENCY_SOURCE="BUNDLED" fi From b4a1b16fa4d16e52d3cc610b331fad98b27534d3 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 10:24:58 +0100 Subject: [PATCH 04/68] Add new CI job that tests both AUTO and BUNDLED dependencies --- dev/tasks/r/github.linux.libsource.yml | 74 ++++++++++++++++++++++++++ dev/tasks/tasks.yml | 4 ++ 2 files changed, 78 insertions(+) create mode 100644 dev/tasks/r/github.linux.libsource.yml diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml new file mode 100644 index 00000000000..2f5cec93cfb --- /dev/null +++ b/dev/tasks/r/github.linux.libsource.yml @@ -0,0 +1,74 @@ +# 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. + +# NOTE: must set "Crossbow" as name to have the badge links working in the +# github comment reports! +name: Crossbow + +on: + push: + branches: + - "*-github-*" + +jobs: + r-versions: + name: "rstudio/r-base:latest-focal" + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + dep_source: ["AUTO", "BUNDLED"] + env: + R_ORG: "rstudio" + R_IMAGE: "r-base" + R_TAG: "latest-focal" + ARROW_R_DEV: "TRUE" + DEPENDENCY_SOURCE: {{ "${{ matrix.os }}" }} + steps: + - name: Checkout Arrow + run: | + git clone --no-checkout {{ arrow.remote }} arrow + git -C arrow fetch -t {{ arrow.remote }} {{ arrow.branch }} + git -C arrow checkout FETCH_HEAD + git -C arrow submodule update --init --recursive + - name: Free Up Disk Space + shell: bash + run: arrow/ci/scripts/util_cleanup.sh + - name: Fetch Submodules and Tags + shell: bash + run: cd arrow && ci/scripts/util_checkout.sh + - name: Docker Pull + shell: bash + run: cd arrow && docker-compose pull --ignore-pull-failures r + - name: Docker Build + shell: bash + run: cd arrow && docker-compose build r + - name: Docker Run + shell: bash + run: cd arrow && docker-compose run r + - name: Dump install logs + run: cat arrow/r/check/arrow.Rcheck/00install.out + if: always() + - name: Dump test logs + run: cat arrow/r/check/arrow.Rcheck/tests/testthat.Rout* + if: always() + - name: Save the test output + if: always() + uses: actions/upload-artifact@v2 + with: + name: test-output + path: arrow/r/check/arrow.Rcheck/tests/testthat.Rout* diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 70f28a9f6a1..821d88c3e12 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1013,6 +1013,10 @@ tasks: test-r-devdocs: ci: github template: r/github.devdocs.yml + + test-r-depsource: + ci: github + template: r/github.linux.libsource.yml {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From 3bdd22fb542a3a84559a4a3541e146b93b2fd5e8 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 10:44:12 +0100 Subject: [PATCH 05/68] Update to have correct matrix param --- dev/tasks/r/github.linux.libsource.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index 2f5cec93cfb..bfbefd97d99 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -37,7 +37,7 @@ jobs: R_IMAGE: "r-base" R_TAG: "latest-focal" ARROW_R_DEV: "TRUE" - DEPENDENCY_SOURCE: {{ "${{ matrix.os }}" }} + DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} steps: - name: Checkout Arrow run: | From 29d43ac948fdf38585d8534dcb8956062f10ed98 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 10:57:36 +0100 Subject: [PATCH 06/68] Update name and env vars --- dev/tasks/r/github.linux.libsource.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index bfbefd97d99..522fe2635a2 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -26,16 +26,13 @@ on: jobs: r-versions: - name: "rstudio/r-base:latest-focal" + name: "Ubuntu Dependency Source" runs-on: ubuntu-latest strategy: fail-fast: false matrix: dep_source: ["AUTO", "BUNDLED"] env: - R_ORG: "rstudio" - R_IMAGE: "r-base" - R_TAG: "latest-focal" ARROW_R_DEV: "TRUE" DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} steps: From 34349b8d010457084a44d269f5b70a85987ca79a Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 11:30:25 +0100 Subject: [PATCH 07/68] Try updating in docker-compose file --- dev/tasks/r/github.linux.libsource.yml | 4 ++-- docker-compose.yml | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index 522fe2635a2..7834413f5e1 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -25,8 +25,8 @@ on: - "*-github-*" jobs: - r-versions: - name: "Ubuntu Dependency Source" + r-lib-source: + name: "Ubuntu Dependency Source: {{ matrix.dep_source }}" runs-on: ubuntu-latest strategy: fail-fast: false diff --git a/docker-compose.yml b/docker-compose.yml index 4290578b9bd..87c94ffba46 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1088,6 +1088,7 @@ services: ARROW_SOURCE_HOME: "/arrow" ARROW_R_DEV: ${ARROW_R_DEV} # To test for CRAN release, delete ^^ these two env vars so we download the Apache release + DEPENDENCY_SOURCE: ${DEPENDENCY_SOURCE} ARROW_USE_PKG_CONFIG: "false" devtoolset_version: ${DEVTOOLSET_VERSION} volumes: From e191f9236431c4e8e8371efdae7f81a5c00056ae Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 11:37:03 +0100 Subject: [PATCH 08/68] Fix naming --- dev/tasks/r/github.linux.libsource.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index 7834413f5e1..fb09cdffb44 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -26,7 +26,7 @@ on: jobs: r-lib-source: - name: "Ubuntu Dependency Source: {{ matrix.dep_source }}" + name: "Ubuntu Dependency Source" runs-on: ubuntu-latest strategy: fail-fast: false From 65bd1698d4224948ad5ce734af076bcf0f539ff9 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 12:29:15 +0100 Subject: [PATCH 09/68] Try passing the var through --- ci/docker/linux-r.dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ci/docker/linux-r.dockerfile b/ci/docker/linux-r.dockerfile index a501d69955c..f24290f4b08 100644 --- a/ci/docker/linux-r.dockerfile +++ b/ci/docker/linux-r.dockerfile @@ -27,6 +27,9 @@ ENV R_BIN=${r_bin} ARG r_dev=FALSE ENV ARROW_R_DEV=${r_dev} +ARG dep_src="BUNDLED" +ENV DEPENDENCY_SOURCE=${dep_src} + ARG devtoolset_version=-1 ENV DEVTOOLSET_VERSION=${devtoolset_version} From 933113b35020f5c3f75059af8a63c6d2b25e665f Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 12:53:01 +0100 Subject: [PATCH 10/68] Add print to see what's happening --- r/inst/build_arrow_static.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 793ed1097ac..a1fefae5cc1 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -58,6 +58,9 @@ else ARROW_DEPENDENCY_SOURCE="BUNDLED" fi +echo "**** DEPENDENCY_SOURCE is....(delete this from the PR!)" +echo "$ARROW_DEPENDENCY_SOURCE" + mkdir -p "${BUILD_DIR}" pushd "${BUILD_DIR}" ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ From fb2c1992868ef7ee46fbfad1d7916b66d535bdd2 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 14 Jul 2021 17:50:36 +0100 Subject: [PATCH 11/68] jon's suggestions --- .env | 1 + ci/docker/linux-r.dockerfile | 3 --- docker-compose.yml | 6 ------ 3 files changed, 1 insertion(+), 9 deletions(-) diff --git a/.env b/.env index 0af36084bd7..adab6d002e0 100644 --- a/.env +++ b/.env @@ -67,6 +67,7 @@ R_ORG=rhub R_IMAGE=ubuntu-gcc-release R_TAG=latest TZ=UTC +DEPENDENCY_SOURCE=BUNDLED # -1 does not attempt to install a devtoolset version, any positive integer will install devtoolset-n DEVTOOLSET_VERSION=-1 diff --git a/ci/docker/linux-r.dockerfile b/ci/docker/linux-r.dockerfile index f24290f4b08..a501d69955c 100644 --- a/ci/docker/linux-r.dockerfile +++ b/ci/docker/linux-r.dockerfile @@ -27,9 +27,6 @@ ENV R_BIN=${r_bin} ARG r_dev=FALSE ENV ARROW_R_DEV=${r_dev} -ARG dep_src="BUNDLED" -ENV DEPENDENCY_SOURCE=${dep_src} - ARG devtoolset_version=-1 ENV DEVTOOLSET_VERSION=${devtoolset_version} diff --git a/docker-compose.yml b/docker-compose.yml index 87c94ffba46..a29e54c2bc4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1058,12 +1058,6 @@ services: /arrow/ci/scripts/python_build.sh /arrow /build && /arrow/ci/scripts/r_test.sh /arrow" - ubuntu-r-only-r: - extends: ubuntu-r - command: > - /bin/bash -c " - /arrow/ci/scripts/r_test.sh /arrow" - r: # This lets you test building/installing the arrow R package # (including building the C++ library) on any Docker image that contains R From 1a6b4ea3f34abc41eb19cd8f22834b6d05c34b4b Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 27 Jul 2021 11:24:04 +0100 Subject: [PATCH 12/68] Remove diagnostic messaging --- r/inst/build_arrow_static.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index a1fefae5cc1..793ed1097ac 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -58,9 +58,6 @@ else ARROW_DEPENDENCY_SOURCE="BUNDLED" fi -echo "**** DEPENDENCY_SOURCE is....(delete this from the PR!)" -echo "$ARROW_DEPENDENCY_SOURCE" - mkdir -p "${BUILD_DIR}" pushd "${BUILD_DIR}" ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ From 894b42842979dce5ae097a2362617d5d51bc09be Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Mon, 26 Jul 2021 10:27:39 -0500 Subject: [PATCH 13/68] Could it be this space? --- r/inst/build_arrow_static.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 793ed1097ac..16ed1997fe1 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -45,7 +45,7 @@ else ARROW_DEFAULT_PARAM="OFF" fi -if [ "$DEPENDENCY_SOURCE" = "AUTO"]; then +if [ "$DEPENDENCY_SOURCE" = "AUTO" ]; then pkg-config --version >/dev/null 2>&1 if [ $? -eq 0 ]; then ARROW_DEPENDENCY_SOURCE="AUTO" From 2245842e30a97e1a3e83204f9760961a939e5488 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 27 Jul 2021 11:42:18 +0100 Subject: [PATCH 14/68] update var name for clarity --- .env | 2 +- dev/tasks/r/github.linux.libsource.yml | 2 +- docker-compose.yml | 2 +- r/inst/build_arrow_static.sh | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.env b/.env index adab6d002e0..b0558559821 100644 --- a/.env +++ b/.env @@ -67,7 +67,7 @@ R_ORG=rhub R_IMAGE=ubuntu-gcc-release R_TAG=latest TZ=UTC -DEPENDENCY_SOURCE=BUNDLED +R_STATIC_DEPENDENCY_SOURCE=BUNDLED # -1 does not attempt to install a devtoolset version, any positive integer will install devtoolset-n DEVTOOLSET_VERSION=-1 diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index fb09cdffb44..de3d516afb0 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -34,7 +34,7 @@ jobs: dep_source: ["AUTO", "BUNDLED"] env: ARROW_R_DEV: "TRUE" - DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} + R_STATIC_DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} steps: - name: Checkout Arrow run: | diff --git a/docker-compose.yml b/docker-compose.yml index a29e54c2bc4..25b9f3669fd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1082,7 +1082,7 @@ services: ARROW_SOURCE_HOME: "/arrow" ARROW_R_DEV: ${ARROW_R_DEV} # To test for CRAN release, delete ^^ these two env vars so we download the Apache release - DEPENDENCY_SOURCE: ${DEPENDENCY_SOURCE} + $R_STATIC_DEPENDENCY_SOURCE: ${$R_STATIC_DEPENDENCY_SOURCE} ARROW_USE_PKG_CONFIG: "false" devtoolset_version: ${DEVTOOLSET_VERSION} volumes: diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 16ed1997fe1..90c66346809 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -45,13 +45,13 @@ else ARROW_DEFAULT_PARAM="OFF" fi -if [ "$DEPENDENCY_SOURCE" = "AUTO" ]; then +if [ "$R_STATIC_DEPENDENCY_SOURCE" = "AUTO" ]; then pkg-config --version >/dev/null 2>&1 if [ $? -eq 0 ]; then ARROW_DEPENDENCY_SOURCE="AUTO" else ARROW_DEPENDENCY_SOURCE="BUNDLED" - echo "**** Warning: DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not detected" + echo "**** Warning: $R_STATIC_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not detected" echo "**** Using bundled dependencies instead" fi else From af0a6817e9f301e45429bfee8bf1c0b1b5ecad26 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 27 Jul 2021 11:50:16 +0100 Subject: [PATCH 15/68] Add back in ?? --- docker-compose.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 25b9f3669fd..208745d0058 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1058,6 +1058,12 @@ services: /arrow/ci/scripts/python_build.sh /arrow /build && /arrow/ci/scripts/r_test.sh /arrow" + ubuntu-r-only-r: + extends: ubuntu-r + command: > + /bin/bash -c " + /arrow/ci/scripts/r_test.sh /arrow" + r: # This lets you test building/installing the arrow R package # (including building the C++ library) on any Docker image that contains R From 1de55e0760eecc431037469f3a6328dd57186b7f Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 27 Jul 2021 11:52:59 +0100 Subject: [PATCH 16/68] typo --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 208745d0058..bc3b0633139 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1088,7 +1088,7 @@ services: ARROW_SOURCE_HOME: "/arrow" ARROW_R_DEV: ${ARROW_R_DEV} # To test for CRAN release, delete ^^ these two env vars so we download the Apache release - $R_STATIC_DEPENDENCY_SOURCE: ${$R_STATIC_DEPENDENCY_SOURCE} + $R_STATIC_DEPENDENCY_SOURCE: ${R_STATIC_DEPENDENCY_SOURCE} ARROW_USE_PKG_CONFIG: "false" devtoolset_version: ${DEVTOOLSET_VERSION} volumes: From 6e83b5d0c6c8f348d50b17e833b2d86636a42772 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 27 Jul 2021 17:47:32 +0100 Subject: [PATCH 17/68] Remove unnecessary var --- .env | 1 - 1 file changed, 1 deletion(-) diff --git a/.env b/.env index b0558559821..0af36084bd7 100644 --- a/.env +++ b/.env @@ -67,7 +67,6 @@ R_ORG=rhub R_IMAGE=ubuntu-gcc-release R_TAG=latest TZ=UTC -R_STATIC_DEPENDENCY_SOURCE=BUNDLED # -1 does not attempt to install a devtoolset version, any positive integer will install devtoolset-n DEVTOOLSET_VERSION=-1 From fe7c6c43def5a2f9cd205e61cbd3948144e2d5c9 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 27 Jul 2021 18:08:48 +0100 Subject: [PATCH 18/68] Reset build_arrow_static.sh --- r/inst/build_arrow_static.sh | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 90c66346809..fdd99ca52ef 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -45,19 +45,6 @@ else ARROW_DEFAULT_PARAM="OFF" fi -if [ "$R_STATIC_DEPENDENCY_SOURCE" = "AUTO" ]; then - pkg-config --version >/dev/null 2>&1 - if [ $? -eq 0 ]; then - ARROW_DEPENDENCY_SOURCE="AUTO" - else - ARROW_DEPENDENCY_SOURCE="BUNDLED" - echo "**** Warning: $R_STATIC_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not detected" - echo "**** Using bundled dependencies instead" - fi -else - ARROW_DEPENDENCY_SOURCE="BUNDLED" -fi - mkdir -p "${BUILD_DIR}" pushd "${BUILD_DIR}" ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ @@ -67,7 +54,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -DARROW_COMPUTE=ON \ -DARROW_CSV=ON \ -DARROW_DATASET=${ARROW_DATASET:-ON} \ - -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE} \ + -DARROW_DEPENDENCY_SOURCE=BUNDLED \ -DARROW_FILESYSTEM=ON \ -DARROW_JEMALLOC=${ARROW_JEMALLOC:-$ARROW_DEFAULT_PARAM} \ -DARROW_MIMALLOC=${ARROW_MIMALLOC:-ON} \ From f4dbe363c82adc5340882350a2456faa18f17f15 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 28 Jul 2021 12:25:24 +0100 Subject: [PATCH 19/68] Allow pkg-config is arrow-dependency_source is auto --- r/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/configure b/r/configure index 0972a99f8f3..7454ed419b6 100755 --- a/r/configure +++ b/r/configure @@ -80,7 +80,7 @@ elif [ "$INCLUDE_DIR" ] && [ "$LIB_DIR" ]; then else # Use pkg-config if available and allowed pkg-config --version >/dev/null 2>&1 - if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ]; then + if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ] && [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then PKGCONFIG_CFLAGS=`pkg-config --cflags --silence-errors ${PKG_CONFIG_NAME}` PKGCONFIG_LIBS=`pkg-config --libs-only-l --silence-errors ${PKG_CONFIG_NAME}` PKGCONFIG_DIRS=`pkg-config --libs-only-L --silence-errors ${PKG_CONFIG_NAME}` From e1d4edc05adc793c39dbb6387a9975ecd0a050d5 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 28 Jul 2021 12:51:08 +0100 Subject: [PATCH 20/68] Call pkgconfig on the install dir --- r/configure | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/r/configure b/r/configure index 7454ed419b6..47ff264960c 100755 --- a/r/configure +++ b/r/configure @@ -81,6 +81,7 @@ else # Use pkg-config if available and allowed pkg-config --version >/dev/null 2>&1 if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ] && [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then + # Set the search paths and compile flags PKGCONFIG_CFLAGS=`pkg-config --cflags --silence-errors ${PKG_CONFIG_NAME}` PKGCONFIG_LIBS=`pkg-config --libs-only-l --silence-errors ${PKG_CONFIG_NAME}` PKGCONFIG_DIRS=`pkg-config --libs-only-L --silence-errors ${PKG_CONFIG_NAME}` @@ -268,6 +269,11 @@ else PKG_CFLAGS="" fi + +if [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then + PKG_LIBS = "pkgconfig ${LIB_DIR} $PKG_LIBS" +fi + # Write to Makevars sed -e "s|@cflags@|$PKG_CFLAGS|" -e "s|@libs@|$PKG_LIBS|" src/Makevars.in > src/Makevars From e5e8262cf792437e226f3f10fee00de57b3ce927 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Fri, 30 Jul 2021 10:46:02 +0100 Subject: [PATCH 21/68] Allow dependency source to be configurable --- r/inst/build_arrow_static.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index fdd99ca52ef..838da8f9de8 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -54,7 +54,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -DARROW_COMPUTE=ON \ -DARROW_CSV=ON \ -DARROW_DATASET=${ARROW_DATASET:-ON} \ - -DARROW_DEPENDENCY_SOURCE=BUNDLED \ + -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE} \ -DARROW_FILESYSTEM=ON \ -DARROW_JEMALLOC=${ARROW_JEMALLOC:-$ARROW_DEFAULT_PARAM} \ -DARROW_MIMALLOC=${ARROW_MIMALLOC:-ON} \ From a5091bda6ce6986db5cff24e8ef23e10eeb4ae64 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Fri, 30 Jul 2021 10:46:21 +0100 Subject: [PATCH 22/68] Relocate code --- r/configure | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/r/configure b/r/configure index 47ff264960c..ae214636031 100755 --- a/r/configure +++ b/r/configure @@ -157,6 +157,20 @@ else fi fi + if [ "${ARROW_DEPENDENCY_SOURCE}" = "" ]; then + # TODO: BUNDLED is still default for now, but we plan to change it to AUTO + ARROW_DEPENDENCY_SOURCE=BUNDLED; export ARROW_DEPENDENCY_SOURCE + fi + if [ "${ARROW_DEPENDENCY_SOURCE}" = "AUTO" ]; then + which pkg-config >/dev/null 2>&1 + if [ $? -eq 0 ]; then + export ARROW_DEPENDENCY_SOURCE=BUNDLED + echo "**** Warning: ARROW_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not installed" + echo "**** ARROW_DEPENDENCY_SOURCE has been set to 'BUNDLED'" + + fi + fi + ${R_HOME}/bin/Rscript tools/nixlibs.R $VERSION PKG_CFLAGS="-I`pwd`/libarrow/arrow-${VERSION}/include $PKG_CFLAGS" @@ -174,6 +188,10 @@ else BUNDLED_LIBS=`echo "$BUNDLED_LIBS" | sed -e "s/\\.a lib/ -l/g" | sed -e "s/\\.a$//" | sed -e "s/^lib/-l/" | tr '\n' ' ' | sed -e "s/ $//"` PKG_DIRS="-L`pwd`/$LIB_DIR" + if [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then + PKG_LIBS = "pkgconfig ${LIB_DIR} $PKG_LIBS" + fi + # When using brew's openssl it is not bundled and it is not on the system # search path and so we must add the lib path to BUNDLED_LIBS if we are # using it. Note the order is important, this must be after the arrow @@ -269,11 +287,6 @@ else PKG_CFLAGS="" fi - -if [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then - PKG_LIBS = "pkgconfig ${LIB_DIR} $PKG_LIBS" -fi - # Write to Makevars sed -e "s|@cflags@|$PKG_CFLAGS|" -e "s|@libs@|$PKG_LIBS|" src/Makevars.in > src/Makevars From 4dd959f5109f0899417fb42927a8d9930bf33b68 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Fri, 30 Jul 2021 12:37:40 +0100 Subject: [PATCH 23/68] Remove references to unnecessary variable --- dev/tasks/r/github.linux.libsource.yml | 2 +- docker-compose.yml | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index de3d516afb0..df90e1b45f5 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -34,7 +34,7 @@ jobs: dep_source: ["AUTO", "BUNDLED"] env: ARROW_R_DEV: "TRUE" - R_STATIC_DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} + ARROW_DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} steps: - name: Checkout Arrow run: | diff --git a/docker-compose.yml b/docker-compose.yml index bc3b0633139..4290578b9bd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1088,7 +1088,6 @@ services: ARROW_SOURCE_HOME: "/arrow" ARROW_R_DEV: ${ARROW_R_DEV} # To test for CRAN release, delete ^^ these two env vars so we download the Apache release - $R_STATIC_DEPENDENCY_SOURCE: ${R_STATIC_DEPENDENCY_SOURCE} ARROW_USE_PKG_CONFIG: "false" devtoolset_version: ${DEVTOOLSET_VERSION} volumes: From 4753b489e7e0548c22bd3029d4670d19bb8a5b9a Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 14:24:51 +0100 Subject: [PATCH 24/68] Update new CI job to read in ARROW_DEPENDENCY_SOURCE via docker env var --- dev/tasks/r/github.linux.libsource.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index df90e1b45f5..76054b4111a 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -56,7 +56,7 @@ jobs: run: cd arrow && docker-compose build r - name: Docker Run shell: bash - run: cd arrow && docker-compose run r + run: cd arrow && docker-compose run r -e ARROW_DEPENDENCY_SOURCE="$ARROW_DEPENDENCY_SOURCE" - name: Dump install logs run: cat arrow/r/check/arrow.Rcheck/00install.out if: always() From a3f291f042d67268c285b9fc691cb9ca0f941302 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 16:49:00 +0100 Subject: [PATCH 25/68] Various suggested changes --- r/configure | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/r/configure b/r/configure index ae214636031..2195ab81c13 100755 --- a/r/configure +++ b/r/configure @@ -80,12 +80,11 @@ elif [ "$INCLUDE_DIR" ] && [ "$LIB_DIR" ]; then else # Use pkg-config if available and allowed pkg-config --version >/dev/null 2>&1 - if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ] && [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then + if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ]; then # Set the search paths and compile flags PKGCONFIG_CFLAGS=`pkg-config --cflags --silence-errors ${PKG_CONFIG_NAME}` - PKGCONFIG_LIBS=`pkg-config --libs-only-l --silence-errors ${PKG_CONFIG_NAME}` - PKGCONFIG_DIRS=`pkg-config --libs-only-L --silence-errors ${PKG_CONFIG_NAME}` - # TODO: what about --libs-only-other? + PKGCONFIG_LIBS=`pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}` + PKGCONFIG_DIRS=`pkg-config --libs-only-L --static --silence-errors ${PKG_CONFIG_NAME}` fi if [ "$PKGCONFIG_CFLAGS" ] && [ "$PKGCONFIG_LIBS" ]; then @@ -188,8 +187,10 @@ else BUNDLED_LIBS=`echo "$BUNDLED_LIBS" | sed -e "s/\\.a lib/ -l/g" | sed -e "s/\\.a$//" | sed -e "s/^lib/-l/" | tr '\n' ' ' | sed -e "s/ $//"` PKG_DIRS="-L`pwd`/$LIB_DIR" + # Use pkg-config to do static linking if [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then - PKG_LIBS = "pkgconfig ${LIB_DIR} $PKG_LIBS" + #PKG_LIBS = "pkgconfig ${LIB_DIR} $PKG_LIBS" + PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi # When using brew's openssl it is not bundled and it is not on the system From 5fde64a89f2059fd45d034ce400062259bea9fc2 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 17:08:29 +0100 Subject: [PATCH 26/68] Fix docker run call --- dev/tasks/r/github.linux.libsource.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index 76054b4111a..b894ba78249 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -56,7 +56,7 @@ jobs: run: cd arrow && docker-compose build r - name: Docker Run shell: bash - run: cd arrow && docker-compose run r -e ARROW_DEPENDENCY_SOURCE="$ARROW_DEPENDENCY_SOURCE" + run: cd arrow && docker-compose run -e ARROW_DEPENDENCY_SOURCE="$ARROW_DEPENDENCY_SOURCE" r - name: Dump install logs run: cat arrow/r/check/arrow.Rcheck/00install.out if: always() From 66fc15615066c2f7d58952bdc6630825fb9f97c5 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 17:29:30 +0100 Subject: [PATCH 27/68] double to single equals --- r/configure | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/r/configure b/r/configure index 2195ab81c13..9ee45c22304 100755 --- a/r/configure +++ b/r/configure @@ -188,8 +188,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking - if [ "$ARROW_DEPENDENCY_SOURCE" == "AUTO" ]; then - #PKG_LIBS = "pkgconfig ${LIB_DIR} $PKG_LIBS" + if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From cd6ffe1f46cde39d5f83924b678a0f40bf8f41cd Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 17:44:29 +0100 Subject: [PATCH 28/68] Install pkg-config --- dev/tasks/r/github.linux.libsource.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index b894ba78249..4f0d77514eb 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -42,6 +42,8 @@ jobs: git -C arrow fetch -t {{ arrow.remote }} {{ arrow.branch }} git -C arrow checkout FETCH_HEAD git -C arrow submodule update --init --recursive + - name: Install pkg-config + run: sudo apt install pkg-config - name: Free Up Disk Space shell: bash run: arrow/ci/scripts/util_cleanup.sh From fdd3f2ab78642dcef255ca0540f3fbcae7c3d7eb Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 18:26:00 +0100 Subject: [PATCH 29/68] Change arbitrary things --- r/configure | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/r/configure b/r/configure index 9ee45c22304..268c7132ec1 100755 --- a/r/configure +++ b/r/configure @@ -41,6 +41,8 @@ ARROW_USE_PKG_CONFIG=`echo $ARROW_USE_PKG_CONFIG | tr '[:upper:]' '[:lower:]'` LIBARROW_MINIMAL=`echo $LIBARROW_MINIMAL | tr '[:upper:]' '[:lower:]'` LIBARROW_DOWNLOAD=`echo $LIBARROW_DOWNLOAD | tr '[:upper:]' '[:lower:]'` NOT_CRAN=`echo $NOT_CRAN | tr '[:upper:]' '[:lower:]'` +ARROW_DEPENDENCY_SOURCE=`echo $ARROW_DEPENDENCY_SOURCE | tr '[:upper:]' '[:lower:]'` + VERSION=`grep '^Version' DESCRIPTION | sed s/Version:\ //` UNAME=`uname -s` @@ -160,10 +162,10 @@ else # TODO: BUNDLED is still default for now, but we plan to change it to AUTO ARROW_DEPENDENCY_SOURCE=BUNDLED; export ARROW_DEPENDENCY_SOURCE fi - if [ "${ARROW_DEPENDENCY_SOURCE}" = "AUTO" ]; then - which pkg-config >/dev/null 2>&1 + if [ "${ARROW_DEPENDENCY_SOURCE}" = "auto" ]; then + pkg-config --version >/dev/null 2>&1 if [ $? -eq 0 ]; then - export ARROW_DEPENDENCY_SOURCE=BUNDLED + export ARROW_DEPENDENCY_SOURCE="bundled" echo "**** Warning: ARROW_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not installed" echo "**** ARROW_DEPENDENCY_SOURCE has been set to 'BUNDLED'" @@ -188,7 +190,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking - if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ]; then + if [ "$ARROW_DEPENDENCY_SOURCE" = "auto" ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From 2c51df334f87976e9d8a92840cd1435582a57347 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 18:45:52 +0100 Subject: [PATCH 30/68] Logic round way round --- dev/tasks/r/github.linux.libsource.yml | 2 -- r/configure | 3 +-- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index 4f0d77514eb..b894ba78249 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -42,8 +42,6 @@ jobs: git -C arrow fetch -t {{ arrow.remote }} {{ arrow.branch }} git -C arrow checkout FETCH_HEAD git -C arrow submodule update --init --recursive - - name: Install pkg-config - run: sudo apt install pkg-config - name: Free Up Disk Space shell: bash run: arrow/ci/scripts/util_cleanup.sh diff --git a/r/configure b/r/configure index 268c7132ec1..8c7535dcaf7 100755 --- a/r/configure +++ b/r/configure @@ -164,11 +164,10 @@ else fi if [ "${ARROW_DEPENDENCY_SOURCE}" = "auto" ]; then pkg-config --version >/dev/null 2>&1 - if [ $? -eq 0 ]; then + if [ $? -ne 0 ]; then export ARROW_DEPENDENCY_SOURCE="bundled" echo "**** Warning: ARROW_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not installed" echo "**** ARROW_DEPENDENCY_SOURCE has been set to 'BUNDLED'" - fi fi From 7c526bd1474dafa4d8c52e4b9162d37952920c0c Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 18:48:57 +0100 Subject: [PATCH 31/68] Update comments for clarity --- r/configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/r/configure b/r/configure index 8c7535dcaf7..c74595b209a 100755 --- a/r/configure +++ b/r/configure @@ -80,7 +80,7 @@ elif [ "$INCLUDE_DIR" ] && [ "$LIB_DIR" ]; then PKG_CFLAGS="-I$INCLUDE_DIR $PKG_CFLAGS" PKG_DIRS="-L$LIB_DIR" else - # Use pkg-config if available and allowed + # Use pkg-config to find libarrow if available and allowed pkg-config --version >/dev/null 2>&1 if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ]; then # Set the search paths and compile flags @@ -188,7 +188,7 @@ else BUNDLED_LIBS=`echo "$BUNDLED_LIBS" | sed -e "s/\\.a lib/ -l/g" | sed -e "s/\\.a$//" | sed -e "s/^lib/-l/" | tr '\n' ' ' | sed -e "s/ $//"` PKG_DIRS="-L`pwd`/$LIB_DIR" - # Use pkg-config to do static linking + # Use pkg-config to do static linking of libarrow's dependencies if [ "$ARROW_DEPENDENCY_SOURCE" = "auto" ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From 4b4e66575f024f1c0c2281abfc50e932a0182aa2 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 19:51:48 +0100 Subject: [PATCH 32/68] this is why we don't randomly change things --- r/configure | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/r/configure b/r/configure index c74595b209a..73d3bb8a78e 100755 --- a/r/configure +++ b/r/configure @@ -41,8 +41,6 @@ ARROW_USE_PKG_CONFIG=`echo $ARROW_USE_PKG_CONFIG | tr '[:upper:]' '[:lower:]'` LIBARROW_MINIMAL=`echo $LIBARROW_MINIMAL | tr '[:upper:]' '[:lower:]'` LIBARROW_DOWNLOAD=`echo $LIBARROW_DOWNLOAD | tr '[:upper:]' '[:lower:]'` NOT_CRAN=`echo $NOT_CRAN | tr '[:upper:]' '[:lower:]'` -ARROW_DEPENDENCY_SOURCE=`echo $ARROW_DEPENDENCY_SOURCE | tr '[:upper:]' '[:lower:]'` - VERSION=`grep '^Version' DESCRIPTION | sed s/Version:\ //` UNAME=`uname -s` @@ -160,12 +158,12 @@ else if [ "${ARROW_DEPENDENCY_SOURCE}" = "" ]; then # TODO: BUNDLED is still default for now, but we plan to change it to AUTO - ARROW_DEPENDENCY_SOURCE=BUNDLED; export ARROW_DEPENDENCY_SOURCE + ARROW_DEPENDENCY_SOURCE="BUNDLED"; export ARROW_DEPENDENCY_SOURCE fi - if [ "${ARROW_DEPENDENCY_SOURCE}" = "auto" ]; then + if [ "${ARROW_DEPENDENCY_SOURCE}" = "AUTO" ]; then pkg-config --version >/dev/null 2>&1 if [ $? -ne 0 ]; then - export ARROW_DEPENDENCY_SOURCE="bundled" + export ARROW_DEPENDENCY_SOURCE="BUNDLED" echo "**** Warning: ARROW_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not installed" echo "**** ARROW_DEPENDENCY_SOURCE has been set to 'BUNDLED'" fi @@ -189,7 +187,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking of libarrow's dependencies - if [ "$ARROW_DEPENDENCY_SOURCE" = "auto" ]; then + if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From fb6d77fa81147ace0d6bea628e6dc8882a208dc0 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Mon, 2 Aug 2021 20:19:57 +0100 Subject: [PATCH 33/68] Unquote vals --- dev/tasks/r/github.linux.libsource.yml | 2 +- r/configure | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml index b894ba78249..5019261f4e7 100644 --- a/dev/tasks/r/github.linux.libsource.yml +++ b/dev/tasks/r/github.linux.libsource.yml @@ -31,7 +31,7 @@ jobs: strategy: fail-fast: false matrix: - dep_source: ["AUTO", "BUNDLED"] + dep_source: [AUTO, BUNDLED] env: ARROW_R_DEV: "TRUE" ARROW_DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} diff --git a/r/configure b/r/configure index 73d3bb8a78e..c16a6766d78 100755 --- a/r/configure +++ b/r/configure @@ -158,12 +158,12 @@ else if [ "${ARROW_DEPENDENCY_SOURCE}" = "" ]; then # TODO: BUNDLED is still default for now, but we plan to change it to AUTO - ARROW_DEPENDENCY_SOURCE="BUNDLED"; export ARROW_DEPENDENCY_SOURCE + ARROW_DEPENDENCY_SOURCE=BUNDLED; export ARROW_DEPENDENCY_SOURCE fi - if [ "${ARROW_DEPENDENCY_SOURCE}" = "AUTO" ]; then + if [ "${ARROW_DEPENDENCY_SOURCE}" = AUTO ]; then pkg-config --version >/dev/null 2>&1 if [ $? -ne 0 ]; then - export ARROW_DEPENDENCY_SOURCE="BUNDLED" + export ARROW_DEPENDENCY_SOURCE=BUNDLED echo "**** Warning: ARROW_DEPENDENCY_SOURCE set to 'AUTO' but pkg-config not installed" echo "**** ARROW_DEPENDENCY_SOURCE has been set to 'BUNDLED'" fi @@ -187,7 +187,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking of libarrow's dependencies - if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ]; then + if [ "$ARROW_DEPENDENCY_SOURCE" = AUTO ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From b74d5b86102728cc780a115f3baadad10acf468e Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 3 Aug 2021 09:08:06 +0000 Subject: [PATCH 34/68] Update dev/tasks/tasks.yml Co-authored-by: Neal Richardson --- dev/tasks/tasks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 821d88c3e12..c29080d71e2 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1014,7 +1014,7 @@ tasks: ci: github template: r/github.devdocs.yml - test-r-depsource: + test-r-depsource-auto: ci: github template: r/github.linux.libsource.yml From 861c03fa96a2e2959d58b32e861c8f1a6a91f1f2 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 10:14:25 +0100 Subject: [PATCH 35/68] Use existing job --- dev/tasks/r/github.linux.libsource.yml | 71 -------------------------- dev/tasks/tasks.yml | 4 +- 2 files changed, 3 insertions(+), 72 deletions(-) delete mode 100644 dev/tasks/r/github.linux.libsource.yml diff --git a/dev/tasks/r/github.linux.libsource.yml b/dev/tasks/r/github.linux.libsource.yml deleted file mode 100644 index 5019261f4e7..00000000000 --- a/dev/tasks/r/github.linux.libsource.yml +++ /dev/null @@ -1,71 +0,0 @@ -# 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. - -# NOTE: must set "Crossbow" as name to have the badge links working in the -# github comment reports! -name: Crossbow - -on: - push: - branches: - - "*-github-*" - -jobs: - r-lib-source: - name: "Ubuntu Dependency Source" - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - dep_source: [AUTO, BUNDLED] - env: - ARROW_R_DEV: "TRUE" - ARROW_DEPENDENCY_SOURCE: {{ "${{ matrix.dep_source }}" }} - steps: - - name: Checkout Arrow - run: | - git clone --no-checkout {{ arrow.remote }} arrow - git -C arrow fetch -t {{ arrow.remote }} {{ arrow.branch }} - git -C arrow checkout FETCH_HEAD - git -C arrow submodule update --init --recursive - - name: Free Up Disk Space - shell: bash - run: arrow/ci/scripts/util_cleanup.sh - - name: Fetch Submodules and Tags - shell: bash - run: cd arrow && ci/scripts/util_checkout.sh - - name: Docker Pull - shell: bash - run: cd arrow && docker-compose pull --ignore-pull-failures r - - name: Docker Build - shell: bash - run: cd arrow && docker-compose build r - - name: Docker Run - shell: bash - run: cd arrow && docker-compose run -e ARROW_DEPENDENCY_SOURCE="$ARROW_DEPENDENCY_SOURCE" r - - name: Dump install logs - run: cat arrow/r/check/arrow.Rcheck/00install.out - if: always() - - name: Dump test logs - run: cat arrow/r/check/arrow.Rcheck/tests/testthat.Rout* - if: always() - - name: Save the test output - if: always() - uses: actions/upload-artifact@v2 - with: - name: test-output - path: arrow/r/check/arrow.Rcheck/tests/testthat.Rout* diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index c29080d71e2..5b0e7238ade 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1016,7 +1016,9 @@ tasks: test-r-depsource-auto: ci: github - template: r/github.linux.libsource.yml + template: docker-tests/github.linux.yml + flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' + image: ubuntu-r-only-r {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From afac895c320517815c559d24249de913af65ee8e Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 10:35:08 +0100 Subject: [PATCH 36/68] fix service spec --- dev/tasks/tasks.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 5b0e7238ade..d981166c9f5 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1017,8 +1017,9 @@ tasks: test-r-depsource-auto: ci: github template: docker-tests/github.linux.yml - flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' - image: ubuntu-r-only-r + params: + flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' + image: ubuntu-r-only-r {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From d4259caecfbaa586726e1d71e9c0d14b7da20fde Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 10:53:10 +0100 Subject: [PATCH 37/68] add flags --- dev/tasks/tasks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index d981166c9f5..ba760c0623a 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1018,7 +1018,7 @@ tasks: ci: github template: docker-tests/github.linux.yml params: - flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' + flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' image: ubuntu-r-only-r {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), From 20bed92adf569c9e35fb83584672cd5dfbb7d3c5 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 12:34:16 +0100 Subject: [PATCH 38/68] test with bundled --- dev/tasks/tasks.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index ba760c0623a..c6a511a0e60 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1021,6 +1021,13 @@ tasks: flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' image: ubuntu-r-only-r + test-r-depsource-bundled: + ci: github + template: docker-tests/github.linux.yml + params: + flags: '-e ARROW_DEPENDENCY_SOURCE=BUNDLED -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' + image: ubuntu-r-only-r + {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), ("rstudio", "r-base", "3.6-bionic"), From b30b74d5beb2d0545741d542e878678dc15af2c7 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 12:56:26 +0100 Subject: [PATCH 39/68] Don't use only-r image --- dev/tasks/tasks.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index c6a511a0e60..25658031eaf 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1019,14 +1019,14 @@ tasks: template: docker-tests/github.linux.yml params: flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' - image: ubuntu-r-only-r + image: ubuntu-r test-r-depsource-bundled: ci: github template: docker-tests/github.linux.yml params: flags: '-e ARROW_DEPENDENCY_SOURCE=BUNDLED -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' - image: ubuntu-r-only-r + image: ubuntu-r {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From 68dcb1b3ed19401709d5597036fdb0301747479a Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 13:28:00 +0100 Subject: [PATCH 40/68] Remove bundled job --- dev/tasks/tasks.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 25658031eaf..d4bb6d567d7 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1021,13 +1021,6 @@ tasks: flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' image: ubuntu-r - test-r-depsource-bundled: - ci: github - template: docker-tests/github.linux.yml - params: - flags: '-e ARROW_DEPENDENCY_SOURCE=BUNDLED -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' - image: ubuntu-r - {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), ("rstudio", "r-base", "3.6-bionic"), From 00e4611a8ddfa4924709f7f3507da8256bb48907 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 15:13:14 +0100 Subject: [PATCH 41/68] Use different job as base --- dev/tasks/r/azure.linux.yml | 1 + dev/tasks/tasks.yml | 12 +++++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/dev/tasks/r/azure.linux.yml b/dev/tasks/r/azure.linux.yml index 7f3a13c1fa7..35eeb095b05 100644 --- a/dev/tasks/r/azure.linux.yml +++ b/dev/tasks/r/azure.linux.yml @@ -52,6 +52,7 @@ jobs: # if ARROW_R_DEV=TRUE. Pass `-e NOT_CRAN=false` to turn that off. docker-compose run \ {{ flags|default("") }} \ + -e DEPENDENCY_SOURCE= {{ dependency_source|default("") }} \ -e ARROW_DATASET={{ arrow_dataset|default("") }} \ -e ARROW_PARQUET={{ arrow_parquet|default("") }} \ -e ARROW_S3={{ arrow_s3|default("") }} \ diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index d4bb6d567d7..bb90a00498d 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1015,11 +1015,13 @@ tasks: template: r/github.devdocs.yml test-r-depsource-auto: - ci: github - template: docker-tests/github.linux.yml - params: - flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO -e ARROW_SOURCE_HOME="/arrow" -e LIBARROW_BUILD=TRUE' - image: ubuntu-r + ci: azure + template: r/azure.linux.yml + params: + r_org: rocker + r_image: r-base + r_tag: latest + flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From 9cd8f009ca4dbf56ae44a2becdf9486e45d3ad02 Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 3 Aug 2021 15:53:14 +0100 Subject: [PATCH 42/68] Bad spacing --- dev/tasks/r/azure.linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/r/azure.linux.yml b/dev/tasks/r/azure.linux.yml index 35eeb095b05..aab155a1687 100644 --- a/dev/tasks/r/azure.linux.yml +++ b/dev/tasks/r/azure.linux.yml @@ -52,7 +52,7 @@ jobs: # if ARROW_R_DEV=TRUE. Pass `-e NOT_CRAN=false` to turn that off. docker-compose run \ {{ flags|default("") }} \ - -e DEPENDENCY_SOURCE= {{ dependency_source|default("") }} \ + -e DEPENDENCY_SOURCE={{ dependency_source|default("") }} \ -e ARROW_DATASET={{ arrow_dataset|default("") }} \ -e ARROW_PARQUET={{ arrow_parquet|default("") }} \ -e ARROW_S3={{ arrow_s3|default("") }} \ From 77a3d57c86e9f937e90778551e6975dfb3106c84 Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 3 Aug 2021 15:55:30 +0100 Subject: [PATCH 43/68] incorrectly named param --- dev/tasks/tasks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index bb90a00498d..86d76e3ef1f 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1021,7 +1021,7 @@ tasks: r_org: rocker r_image: r-base r_tag: latest - flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' + flags: '-e DEPENDENCY_SOURCE=AUTO' {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From 8775d485d2e431be1c1f051ff7a9eaf466171d21 Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 3 Aug 2021 15:58:41 +0100 Subject: [PATCH 44/68] Update azure.linux.yml --- dev/tasks/r/azure.linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/r/azure.linux.yml b/dev/tasks/r/azure.linux.yml index aab155a1687..fe3366a9d61 100644 --- a/dev/tasks/r/azure.linux.yml +++ b/dev/tasks/r/azure.linux.yml @@ -52,7 +52,7 @@ jobs: # if ARROW_R_DEV=TRUE. Pass `-e NOT_CRAN=false` to turn that off. docker-compose run \ {{ flags|default("") }} \ - -e DEPENDENCY_SOURCE={{ dependency_source|default("") }} \ + -e ARROW_DEPENDENCY_SOURCE={{ arrow_dependency_source|default("") }} \ -e ARROW_DATASET={{ arrow_dataset|default("") }} \ -e ARROW_PARQUET={{ arrow_parquet|default("") }} \ -e ARROW_S3={{ arrow_s3|default("") }} \ From 3325981f19a8036340c1c5c53da004732944c5b3 Mon Sep 17 00:00:00 2001 From: Nic Date: Tue, 3 Aug 2021 15:59:31 +0100 Subject: [PATCH 45/68] Update tasks.yml --- dev/tasks/tasks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 86d76e3ef1f..bb90a00498d 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1021,7 +1021,7 @@ tasks: r_org: rocker r_image: r-base r_tag: latest - flags: '-e DEPENDENCY_SOURCE=AUTO' + flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), From e1161513c576de4f21d3ec189da152afca04a9c9 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 3 Aug 2021 16:49:03 +0100 Subject: [PATCH 46/68] pass in flags arg --- dev/tasks/r/azure.linux.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/dev/tasks/r/azure.linux.yml b/dev/tasks/r/azure.linux.yml index fe3366a9d61..7f3a13c1fa7 100644 --- a/dev/tasks/r/azure.linux.yml +++ b/dev/tasks/r/azure.linux.yml @@ -52,7 +52,6 @@ jobs: # if ARROW_R_DEV=TRUE. Pass `-e NOT_CRAN=false` to turn that off. docker-compose run \ {{ flags|default("") }} \ - -e ARROW_DEPENDENCY_SOURCE={{ arrow_dependency_source|default("") }} \ -e ARROW_DATASET={{ arrow_dataset|default("") }} \ -e ARROW_PARQUET={{ arrow_parquet|default("") }} \ -e ARROW_S3={{ arrow_s3|default("") }} \ From 659dd69468db44400cce899782c7b903944d276e Mon Sep 17 00:00:00 2001 From: Neal Richardson Date: Tue, 3 Aug 2021 15:20:59 -0400 Subject: [PATCH 47/68] Add default argument --- r/inst/build_arrow_static.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 838da8f9de8..7e8aea3ee7a 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -54,7 +54,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -DARROW_COMPUTE=ON \ -DARROW_CSV=ON \ -DARROW_DATASET=${ARROW_DATASET:-ON} \ - -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE} \ + -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE:-BUNDLED} \ -DARROW_FILESYSTEM=ON \ -DARROW_JEMALLOC=${ARROW_JEMALLOC:-$ARROW_DEFAULT_PARAM} \ -DARROW_MIMALLOC=${ARROW_MIMALLOC:-ON} \ From dd78fd1f13e93f0a4e7804455265accb3b1c1c5a Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Sun, 8 Aug 2021 10:36:20 +0200 Subject: [PATCH 48/68] loosen the matching for dumping install logs to catch ubuntu-r --- dev/tasks/docker-tests/github.linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/docker-tests/github.linux.yml b/dev/tasks/docker-tests/github.linux.yml index dd347b8306c..863ba630d22 100644 --- a/dev/tasks/docker-tests/github.linux.yml +++ b/dev/tasks/docker-tests/github.linux.yml @@ -41,7 +41,7 @@ jobs: shell: bash run: archery docker run -e SETUPTOOLS_SCM_PRETEND_VERSION="{{ arrow.no_rc_version }}" {{ flags|default("") }} {{ image }} {{ command|default("") }} - {% if '-r-' in image %} + {% if '-r' in image %} - name: Dump R install logs run: cat arrow/r/check/arrow.Rcheck/00install.out continue-on-error: true From ba87c9eee3165298910f2bf2ea3027ce7e8e410c Mon Sep 17 00:00:00 2001 From: Nic Date: Mon, 9 Aug 2021 00:30:48 +0000 Subject: [PATCH 49/68] Update r/configure Co-authored-by: Jonathan Keane --- r/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/configure b/r/configure index c16a6766d78..325f4d3aacc 100755 --- a/r/configure +++ b/r/configure @@ -187,7 +187,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking of libarrow's dependencies - if [ "$ARROW_DEPENDENCY_SOURCE" = AUTO ]; then + if [ "$ARROW_DEPENDENCY_SOURCE" = AUTO | "$ARROW_DEPENDENCY_SOURCE" = SYSTEM ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From c3ea16b45a6e0bf84cda114680c19736046f1b42 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Mon, 9 Aug 2021 09:07:36 +0200 Subject: [PATCH 50/68] Add if: always() to make the dump step actually work --- dev/tasks/docker-tests/github.linux.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/dev/tasks/docker-tests/github.linux.yml b/dev/tasks/docker-tests/github.linux.yml index 863ba630d22..2499cc43177 100644 --- a/dev/tasks/docker-tests/github.linux.yml +++ b/dev/tasks/docker-tests/github.linux.yml @@ -45,6 +45,7 @@ jobs: - name: Dump R install logs run: cat arrow/r/check/arrow.Rcheck/00install.out continue-on-error: true + if: always() {% endif %} {% if arrow.branch == 'master' %} From ab1d14907b08a5b75d0747a9631fbbe1f98efb2b Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Mon, 9 Aug 2021 10:13:23 +0200 Subject: [PATCH 51/68] oops --- r/configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/r/configure b/r/configure index 325f4d3aacc..54b631a2600 100755 --- a/r/configure +++ b/r/configure @@ -160,7 +160,7 @@ else # TODO: BUNDLED is still default for now, but we plan to change it to AUTO ARROW_DEPENDENCY_SOURCE=BUNDLED; export ARROW_DEPENDENCY_SOURCE fi - if [ "${ARROW_DEPENDENCY_SOURCE}" = AUTO ]; then + if [ "${ARROW_DEPENDENCY_SOURCE}" = "AUTO" ]; then pkg-config --version >/dev/null 2>&1 if [ $? -ne 0 ]; then export ARROW_DEPENDENCY_SOURCE=BUNDLED @@ -187,7 +187,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking of libarrow's dependencies - if [ "$ARROW_DEPENDENCY_SOURCE" = AUTO | "$ARROW_DEPENDENCY_SOURCE" = SYSTEM ]; then + if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" | "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From 593b930a035d18da28d386d45c8eef738c1f0bcf Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Mon, 9 Aug 2021 11:30:27 +0200 Subject: [PATCH 52/68] more bash --- r/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/configure b/r/configure index 54b631a2600..79c5878fb65 100755 --- a/r/configure +++ b/r/configure @@ -187,7 +187,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking of libarrow's dependencies - if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" | "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]; then + if [[ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" || "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From 956b3d65c30fc52e90adc2b23c1926331c26c698 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Mon, 9 Aug 2021 15:08:09 +0200 Subject: [PATCH 53/68] pass AWSSDK_SOURCE --- r/inst/build_arrow_static.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 7e8aea3ee7a..2b2a475f1d2 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -55,6 +55,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -DARROW_CSV=ON \ -DARROW_DATASET=${ARROW_DATASET:-ON} \ -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE:-BUNDLED} \ + -DAWSSDK_SOURCE=${AWSSDK_SOURCE:-} \ -DARROW_FILESYSTEM=ON \ -DARROW_JEMALLOC=${ARROW_JEMALLOC:-$ARROW_DEFAULT_PARAM} \ -DARROW_MIMALLOC=${ARROW_MIMALLOC:-ON} \ From acb276b81df73b2bce4872a3f3fc3eb72b5a74a2 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 10 Aug 2021 11:28:16 +0200 Subject: [PATCH 54/68] Kou's patch --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index 0631d277b08..003d14428da 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -837,7 +837,16 @@ set(Boost_ADDITIONAL_VERSIONS # so we first need to determine whether we're building it if(ARROW_WITH_THRIFT AND Thrift_SOURCE STREQUAL "AUTO") find_package(Thrift 0.11.0 MODULE COMPONENTS ${ARROW_THRIFT_REQUIRED_COMPONENTS}) - if(NOT Thrift_FOUND AND NOT THRIFT_FOUND) + if(Thrift_FOUND) + pkg_check_modules(THRIFT_PC + thrift + NO_CMAKE_PATH + NO_CMAKE_ENVIRONMENT_PATH + QUIET) + if(THRIFT_PC_FOUND) + string(APPEND ARROW_PC_REQUIRES_PRIVATE " thrift") + endif() + else() set(Thrift_SOURCE "BUNDLED") endif() endif() @@ -1306,7 +1315,7 @@ endmacro() if(ARROW_WITH_THRIFT) # We already may have looked for Thrift earlier, when considering whether # to build Boost, so don't look again if already found. - if(NOT Thrift_FOUND AND NOT THRIFT_FOUND) + if(NOT Thrift_FOUND) # Thrift c++ code generated by 0.13 requires 0.11 or greater resolve_dependency(Thrift REQUIRED_VERSION From 259314643a00cbfa52ee32e7c1076d387cc1de18 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 10 Aug 2021 11:30:05 +0200 Subject: [PATCH 55/68] [[ -> [ --- r/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/configure b/r/configure index 79c5878fb65..4867f740c7d 100755 --- a/r/configure +++ b/r/configure @@ -187,7 +187,7 @@ else PKG_DIRS="-L`pwd`/$LIB_DIR" # Use pkg-config to do static linking of libarrow's dependencies - if [[ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" || "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]]; then + if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ] || [ "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]; then PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi From 4765f8e02451f209de3afb6281ee2c4d61fe2ff9 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 10 Aug 2021 11:28:48 +0100 Subject: [PATCH 56/68] Add find_package PKGConfig --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index 003d14428da..b3f66a94d28 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -836,6 +836,7 @@ set(Boost_ADDITIONAL_VERSIONS # Thrift needs Boost if we're building the bundled version with version < 0.13, # so we first need to determine whether we're building it if(ARROW_WITH_THRIFT AND Thrift_SOURCE STREQUAL "AUTO") + find_package(PkgConfig QUIET) find_package(Thrift 0.11.0 MODULE COMPONENTS ${ARROW_THRIFT_REQUIRED_COMPONENTS}) if(Thrift_FOUND) pkg_check_modules(THRIFT_PC From 2533871aa3cfb4adc104e53265afea0a0e2719e9 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Tue, 10 Aug 2021 13:05:13 +0100 Subject: [PATCH 57/68] Run ldconfig --- r/inst/build_arrow_static.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 2b2a475f1d2..eb3dbfe0f29 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -80,4 +80,7 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -G ${CMAKE_GENERATOR:-"Unix Makefiles"} \ ${SOURCE_DIR} ${CMAKE} --build . --target install + +ldconfig + popd From 3ef25a41a40eb3037fc9d2a5a1b9980facbe1f62 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 10 Aug 2021 14:08:48 +0200 Subject: [PATCH 58/68] use ubuntu-r-only-r for 21.04 --- dev/tasks/tasks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index bb90a00498d..0a675bdb9ba 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1059,7 +1059,7 @@ tasks: UBUNTU: 21.04 CLANG_TOOLS: 9 # can remove this when >=9 is the default flags: '-e ARROW_SOURCE_HOME="/arrow" -e FORCE_BUNDLED_BUILD=TRUE -e LIBARROW_BUILD=TRUE' - image: ubuntu-r + image: ubuntu-r-only-r # This also has -flto=auto test-r-gcc-11: From 39156ee2567e105f61c1a61f74e6188711d84cc6 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 10 Aug 2021 16:09:42 +0200 Subject: [PATCH 59/68] add pkgconfig to the pkg-config path --- r/configure | 2 +- r/inst/build_arrow_static.sh | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/r/configure b/r/configure index 4867f740c7d..f0fe014aaba 100755 --- a/r/configure +++ b/r/configure @@ -188,7 +188,7 @@ else # Use pkg-config to do static linking of libarrow's dependencies if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ] || [ "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]; then - PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR} pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" + PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR}/pkgconfig pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi # When using brew's openssl it is not bundled and it is not on the system diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index eb3dbfe0f29..681a4e4d53e 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -81,6 +81,4 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ ${SOURCE_DIR} ${CMAKE} --build . --target install -ldconfig - popd From 9e2c3e2010fd145318cbf5278b2a28ef725257c5 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 10 Aug 2021 16:28:16 +0200 Subject: [PATCH 60/68] cleanup a whitespace cruft --- r/inst/build_arrow_static.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 681a4e4d53e..2b2a475f1d2 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -80,5 +80,4 @@ ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ -G ${CMAKE_GENERATOR:-"Unix Makefiles"} \ ${SOURCE_DIR} ${CMAKE} --build . --target install - popd From 27baa42c71923ec24ce86532a2eb5b178f1aa19b Mon Sep 17 00:00:00 2001 From: Nic Date: Wed, 11 Aug 2021 08:39:58 +0100 Subject: [PATCH 61/68] Move PkgConfig finding to correct location --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index b3f66a94d28..bba1c2de1ba 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -836,9 +836,9 @@ set(Boost_ADDITIONAL_VERSIONS # Thrift needs Boost if we're building the bundled version with version < 0.13, # so we first need to determine whether we're building it if(ARROW_WITH_THRIFT AND Thrift_SOURCE STREQUAL "AUTO") - find_package(PkgConfig QUIET) find_package(Thrift 0.11.0 MODULE COMPONENTS ${ARROW_THRIFT_REQUIRED_COMPONENTS}) if(Thrift_FOUND) + find_package(PkgConfig QUIET) pkg_check_modules(THRIFT_PC thrift NO_CMAKE_PATH From e841f806c77957a86c190586d935711010fca9f9 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Wed, 11 Aug 2021 13:44:55 +0200 Subject: [PATCH 62/68] a ARROW_DEPENDENCY_SOURCE=SYSTEM task + trying to unsent ARROW_DEPENDENCY_SOURCE in linux-apt-r --- ci/docker/linux-apt-r.dockerfile | 2 +- dev/tasks/tasks.yml | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ci/docker/linux-apt-r.dockerfile b/ci/docker/linux-apt-r.dockerfile index 97029ce62ad..c87e0daf529 100644 --- a/ci/docker/linux-apt-r.dockerfile +++ b/ci/docker/linux-apt-r.dockerfile @@ -100,7 +100,7 @@ ENV \ ARROW_BUILD_STATIC=OFF \ ARROW_BUILD_TESTS=OFF \ ARROW_BUILD_UTILITIES=OFF \ - ARROW_DEPENDENCY_SOURCE=SYSTEM \ + ARROW_DEPENDENCY_SOURCE="" \ ARROW_FLIGHT=OFF \ ARROW_GANDIVA=OFF \ ARROW_NO_DEPRECATED_API=ON \ diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 0a675bdb9ba..b7160e2d97a 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1023,6 +1023,17 @@ tasks: r_tag: latest flags: '-e ARROW_DEPENDENCY_SOURCE=AUTO' + test-r-depsource-system: + ci: github + template: docker-tests/github.linux.yml + params: + env: + UBUNTU: 21.04 + CLANG_TOOLS: 9 # can remove this when >=9 is the default + flags: '-e ARROW_SOURCE_HOME="/arrow" -e FORCE_BUNDLED_BUILD=TRUE -e LIBARROW_BUILD=TRUE -e ARROW_DEPENDENCY_SOURCE=SYSTEM' + image: ubuntu-r-only-r + + {% for r_org, r_image, r_tag in [("rhub", "ubuntu-gcc-release", "latest"), ("rocker", "r-base", "latest"), ("rstudio", "r-base", "3.6-bionic"), From a3b0f18038be46ba0eaaca9bf7d652efab354ffe Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Wed, 11 Aug 2021 17:13:07 +0200 Subject: [PATCH 63/68] try backing out --static --- r/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/configure b/r/configure index f0fe014aaba..05daf50083c 100755 --- a/r/configure +++ b/r/configure @@ -188,7 +188,7 @@ else # Use pkg-config to do static linking of libarrow's dependencies if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ] || [ "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]; then - PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR}/pkgconfig pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" + PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR}/pkgconfig pkg-config --libs-only-l --libs-only-other --silence-errors ${PKG_CONFIG_NAME}`" fi # When using brew's openssl it is not bundled and it is not on the system From 13b6b6bd00e6583ec5297b57f6614683bb0d9350 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Wed, 11 Aug 2021 18:07:26 +0200 Subject: [PATCH 64/68] no --static anywhere --- r/configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/r/configure b/r/configure index 05daf50083c..b1d97d57d64 100755 --- a/r/configure +++ b/r/configure @@ -83,8 +83,8 @@ else if [ $? -eq 0 ] && [ "$ARROW_USE_PKG_CONFIG" != "false" ]; then # Set the search paths and compile flags PKGCONFIG_CFLAGS=`pkg-config --cflags --silence-errors ${PKG_CONFIG_NAME}` - PKGCONFIG_LIBS=`pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}` - PKGCONFIG_DIRS=`pkg-config --libs-only-L --static --silence-errors ${PKG_CONFIG_NAME}` + PKGCONFIG_LIBS=`pkg-config --libs-only-l --libs-only-other --silence-errors ${PKG_CONFIG_NAME}` + PKGCONFIG_DIRS=`pkg-config --libs-only-L --silence-errors ${PKG_CONFIG_NAME}` fi if [ "$PKGCONFIG_CFLAGS" ] && [ "$PKGCONFIG_LIBS" ]; then From bcba8bade6f1db347304c08a3aa5e0ce4a444665 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Sun, 15 Aug 2021 20:59:28 +0200 Subject: [PATCH 65/68] Update cpp/cmake_modules/ThirdpartyToolchain.cmake --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index bba1c2de1ba..691b3691ee3 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -835,7 +835,7 @@ set(Boost_ADDITIONAL_VERSIONS # Thrift needs Boost if we're building the bundled version with version < 0.13, # so we first need to determine whether we're building it -if(ARROW_WITH_THRIFT AND Thrift_SOURCE STREQUAL "AUTO") +if(ARROW_WITH_THRIFT AND (Thrift_SOURCE STREQUAL "AUTO" OR Thrift_SOURCE STREQUAL "SYSTEM")) find_package(Thrift 0.11.0 MODULE COMPONENTS ${ARROW_THRIFT_REQUIRED_COMPONENTS}) if(Thrift_FOUND) find_package(PkgConfig QUIET) From ec61d2dfcfa969269af104e1f0184d7c775b9ef7 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Sun, 15 Aug 2021 22:52:05 +0200 Subject: [PATCH 66/68] try adding back in one --static? --- r/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/r/configure b/r/configure index b1d97d57d64..d871028486a 100755 --- a/r/configure +++ b/r/configure @@ -188,7 +188,7 @@ else # Use pkg-config to do static linking of libarrow's dependencies if [ "$ARROW_DEPENDENCY_SOURCE" = "AUTO" ] || [ "$ARROW_DEPENDENCY_SOURCE" = "SYSTEM" ]; then - PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR}/pkgconfig pkg-config --libs-only-l --libs-only-other --silence-errors ${PKG_CONFIG_NAME}`" + PKG_LIBS="$PKG_LIBS `PKG_CONFIG_PATH=${LIB_DIR}/pkgconfig pkg-config --libs-only-l --libs-only-other --static --silence-errors ${PKG_CONFIG_NAME}`" fi # When using brew's openssl it is not bundled and it is not on the system From d2f6d1a60a1162ec839cfaaa9df1945ab03ae47f Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 17 Aug 2021 16:46:56 +0200 Subject: [PATCH 67/68] remove an overly-zealous addition --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index 691b3691ee3..bba1c2de1ba 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -835,7 +835,7 @@ set(Boost_ADDITIONAL_VERSIONS # Thrift needs Boost if we're building the bundled version with version < 0.13, # so we first need to determine whether we're building it -if(ARROW_WITH_THRIFT AND (Thrift_SOURCE STREQUAL "AUTO" OR Thrift_SOURCE STREQUAL "SYSTEM")) +if(ARROW_WITH_THRIFT AND Thrift_SOURCE STREQUAL "AUTO") find_package(Thrift 0.11.0 MODULE COMPONENTS ${ARROW_THRIFT_REQUIRED_COMPONENTS}) if(Thrift_FOUND) find_package(PkgConfig QUIET) From 2cf3a26dbd4bfde828ef26f6551653df71f69f82 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Tue, 17 Aug 2021 16:58:38 +0200 Subject: [PATCH 68/68] shuffle where we unset ARROW_DEPENDENCY_SOURCE --- ci/docker/linux-apt-r.dockerfile | 1 - docker-compose.yml | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ci/docker/linux-apt-r.dockerfile b/ci/docker/linux-apt-r.dockerfile index c87e0daf529..3a84a11c9b6 100644 --- a/ci/docker/linux-apt-r.dockerfile +++ b/ci/docker/linux-apt-r.dockerfile @@ -100,7 +100,6 @@ ENV \ ARROW_BUILD_STATIC=OFF \ ARROW_BUILD_TESTS=OFF \ ARROW_BUILD_UTILITIES=OFF \ - ARROW_DEPENDENCY_SOURCE="" \ ARROW_FLIGHT=OFF \ ARROW_GANDIVA=OFF \ ARROW_NO_DEPRECATED_API=ON \ diff --git a/docker-compose.yml b/docker-compose.yml index 4290578b9bd..cdbba66aebc 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1059,6 +1059,8 @@ services: /arrow/ci/scripts/r_test.sh /arrow" ubuntu-r-only-r: + environment: + ARROW_DEPENDENCY_SOURCE: '' extends: ubuntu-r command: > /bin/bash -c "