From a9ee2d412fe507d3b25c35b1f06d9c909246d98c Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 4 Dec 2022 20:02:05 +1100 Subject: [PATCH 1/6] build for arrow 10.0.1 --- recipe/meta.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 569b864..edf24a0 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "9.0.0" %} +{% set version = "10.0.1" %} {% set posix = 'm2-' if win else '' %} {% set native = 'm2w64-' if win else '' %} @@ -8,11 +8,11 @@ package: source: url: https://dist.apache.org/repos/dist/release/arrow/arrow-{{ version }}/apache-arrow-{{ version }}.tar.gz - sha256: a9a033f0a3490289998f458680d19579cf07911717ba65afde6cb80070f7a9b5 + sha256: c814e0670112a22c1a6ec03ab420a52ae236a9a42e9e438c3cbd37f37e658fb3 build: merge_build_host: true # [win] - number: 1 + number: 0 rpaths: - lib/R/lib/ - lib/ @@ -26,7 +26,6 @@ requirements: - r-purrr # [build_platform != target_platform] - r-rlang # [build_platform != target_platform] - r-tidyselect # [build_platform != target_platform] - - python 3.9 # [build_platform != target_platform] - {{ compiler('c') }} # [not win] - {{ compiler('cxx') }} # [not win] - {{ compiler('r_clang') }} # [win] @@ -39,8 +38,8 @@ requirements: host: # Needs to be here, otherwise merge_build_host runs into issues - pkg-config # [win] + - libarrow {{ version }} - r-base - - arrow-cpp {{ version }} - r-r6 - r-cpp11 - r-assertthat From d45374253500c58f59c201772a39d9d17f8f456d Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 4 Dec 2022 20:49:53 +1100 Subject: [PATCH 2/6] MNT: Re-rendered with conda-build 3.23.2, conda-smithy 3.22.0, and conda-forge-pinning 2022.12.02.15.22.41 --- .azure-pipelines/azure-pipelines-win.yml | 2 +- .ci_support/migrations/r-base42.yaml | 15 --------------- .circleci/config.yml | 2 +- .scripts/build_steps.sh | 4 ++-- .scripts/run_osx_build.sh | 5 ++--- README.md | 18 +++++++++--------- 6 files changed, 15 insertions(+), 31 deletions(-) delete mode 100644 .ci_support/migrations/r-base42.yaml diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index 8a0bcae..13e526a 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -35,7 +35,7 @@ jobs: - script: | call activate base - mamba.exe install 'python=3.9' conda-build conda pip boa 'conda-forge-ci-setup=3' -c conda-forge --strict-channel-priority --yes + mamba.exe install "python=3.9" conda-build conda pip boa conda-forge-ci-setup=3 "py-lief<0.12" -c conda-forge --strict-channel-priority --yes displayName: Install conda-build - script: set PYTHONUNBUFFERED=1 diff --git a/.ci_support/migrations/r-base42.yaml b/.ci_support/migrations/r-base42.yaml deleted file mode 100644 index 78710da..0000000 --- a/.ci_support/migrations/r-base42.yaml +++ /dev/null @@ -1,15 +0,0 @@ -migrator_ts: 1661453785 -__migrator: - kind: version - migration_number: 1 - bump_number: 1 - operation: key_add - commit_message: "Rebuild for r-base 4.2" - primary_key: r_base - automerge: True - longterm: True - include_noarch: True - pr_limit: 20 - -r_base: # [not win] - - 4.2 # [not win] diff --git a/.circleci/config.yml b/.circleci/config.yml index 3e61aa2..8b4ef2f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,6 @@ # This file was generated automatically from conda-smithy. To update this configuration, # update the conda-forge.yml and/or the recipe/meta.yaml. -# -*- mode: yaml -*- +# -*- mode: jinja-yaml -*- version: 2 diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index a6b09f6..84431a6 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -33,9 +33,9 @@ CONDARC mamba install --update-specs --yes --quiet --channel conda-forge \ - conda-build pip boa conda-forge-ci-setup=3 + conda-build pip boa conda-forge-ci-setup=3 "py-lief<0.12" mamba update --update-specs --yes --quiet --channel conda-forge \ - conda-build pip boa conda-forge-ci-setup=3 + conda-build pip boa conda-forge-ci-setup=3 "py-lief<0.12" # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 736a39a..b3abaeb 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -23,11 +23,10 @@ bash $MINIFORGE_FILE -b -p ${MINIFORGE_HOME} source ${MINIFORGE_HOME}/etc/profile.d/conda.sh conda activate base -echo -e "\n\nInstalling ['conda-forge-ci-setup=3'] and conda-build." mamba install --update-specs --quiet --yes --channel conda-forge \ - conda-build pip boa conda-forge-ci-setup=3 + conda-build pip boa conda-forge-ci-setup=3 "py-lief<0.12" mamba update --update-specs --yes --quiet --channel conda-forge \ - conda-build pip boa conda-forge-ci-setup=3 + conda-build pip boa conda-forge-ci-setup=3 "py-lief<0.12" diff --git a/README.md b/README.md index b6af31e..6e9be55 100644 --- a/README.md +++ b/README.md @@ -30,63 +30,63 @@ Current build status linux_64_r_base4.1 - variant + variant linux_64_r_base4.2 - variant + variant linux_aarch64_r_base4.1 - variant + variant linux_aarch64_r_base4.2 - variant + variant osx_64_r_base4.1 - variant + variant osx_64_r_base4.2 - variant + variant osx_arm64_r_base4.1 - variant + variant osx_arm64_r_base4.2 - variant + variant win_64 - variant + variant From 8c3167ee729769b328278919863ede8fb2531b62 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 4 Dec 2022 21:08:01 +1100 Subject: [PATCH 3/6] sync with upstream; be explicit about -std=c++17 --- recipe/bld.bat | 5 +++++ recipe/build.sh | 12 ++++++++++-- recipe/configure.win | 5 ++--- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/recipe/bld.bat b/recipe/bld.bat index ef8cfd6..04d59f2 100644 --- a/recipe/bld.bat +++ b/recipe/bld.bat @@ -1,9 +1,14 @@ +@echo on + bash %RECIPE_DIR%/build_win.sh IF %ERRORLEVEL% NEQ 0 exit 1 + cp %RECIPE_DIR%/configure.win r IF %ERRORLEVEL% NEQ 0 exit 1 + cp %RECIPE_DIR%/install.libs.R r/src IF %ERRORLEVEL% NEQ 0 exit 1 + set "MAKEFLAGS=-j%CPU_COUNT%" "%R%" CMD INSTALL --build r IF %ERRORLEVEL% NEQ 0 exit 1 diff --git a/recipe/build.sh b/recipe/build.sh index 9dd24c7..97ab5d9 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -1,6 +1,14 @@ #!/bin/bash +set -ex export DISABLE_AUTOBREW=1 -# shellcheck disable=SC2086 -${R} CMD INSTALL --build r/. ${R_ARGS} +# set C++17 due to abseil +export ARROW_R_CXXFLAGS="${ARROW_R_CXXFLAGS} -std=c++17" + +if [[ "${target_platform}" == osx-* ]]; then + # See https://conda-forge.org/docs/maintainer/knowledge_base.html#newer-c-features-with-old-sdk + export ARROW_R_CXXFLAGS="${ARROW_R_CXXFLAGS} -D_LIBCPP_DISABLE_AVAILABILITY" +fi + +$R CMD INSTALL --build r/. diff --git a/recipe/configure.win b/recipe/configure.win index 0b11d13..fb16a81 100755 --- a/recipe/configure.win +++ b/recipe/configure.win @@ -2,8 +2,7 @@ set -euxo pipefail -# Remove the -I../inst/include/ when unvendoring cpp11 in ARROW-13610 -echo "PKG_CPPFLAGS=-DNDEBUG -I\"${LIBRARY_PREFIX}/include\" -I\"${PREFIX}/include\" -DARROW_R_WITH_ARROW -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_S3 -DARROW_R_WITH_JSON -I../inst/include/" > src/Makevars.win +echo "PKG_CPPFLAGS=-DNDEBUG -I\"${LIBRARY_PREFIX}/include\" -I\"${PREFIX}/include\" -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_S3 -DARROW_R_WITH_JSON" > src/Makevars.win echo "PKG_CXXFLAGS=\$(CXX_VISIBILITY)" >> src/Makevars.win -echo 'CXX_STD=CXX11' >> src/Makevars.win +echo 'CXX_STD=CXX17' >> src/Makevars.win echo "PKG_LIBS=-L\"${LIBRARY_PREFIX}/lib\" -larrow_dataset -lparquet -larrow" >> src/Makevars.win From e70f1fcc7574eac9f66af7848be8526b4d827f81 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Mon, 5 Dec 2022 17:12:09 +1100 Subject: [PATCH 4/6] re-add ${R_ARGS} --- recipe/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/build.sh b/recipe/build.sh index 97ab5d9..5abe54e 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -11,4 +11,4 @@ if [[ "${target_platform}" == osx-* ]]; then export ARROW_R_CXXFLAGS="${ARROW_R_CXXFLAGS} -D_LIBCPP_DISABLE_AVAILABILITY" fi -$R CMD INSTALL --build r/. +${R} CMD INSTALL --build r/. ${R_ARGS} From 190c8d3b42374829c733fe876e845bca4a447e06 Mon Sep 17 00:00:00 2001 From: "conda-forge-webservices[bot]" <91080706+conda-forge-webservices[bot]@users.noreply.github.com> Date: Mon, 5 Dec 2022 07:01:07 +0000 Subject: [PATCH 5/6] MNT: Re-rendered with conda-build 3.23.2, conda-smithy 3.22.0, and conda-forge-pinning 2022.12.04.19.22.35 --- .ci_support/linux_64_r_base4.1.yaml | 4 ++-- .ci_support/linux_64_r_base4.2.yaml | 4 ++-- .ci_support/linux_aarch64_r_base4.1.yaml | 4 ++-- .ci_support/linux_aarch64_r_base4.2.yaml | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.ci_support/linux_64_r_base4.1.yaml b/.ci_support/linux_64_r_base4.1.yaml index 117a09f..96784cc 100644 --- a/.ci_support/linux_64_r_base4.1.yaml +++ b/.ci_support/linux_64_r_base4.1.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' cdt_name: - cos6 channel_sources: @@ -11,7 +11,7 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 pin_run_as_build: diff --git a/.ci_support/linux_64_r_base4.2.yaml b/.ci_support/linux_64_r_base4.2.yaml index bab275a..38753ba 100644 --- a/.ci_support/linux_64_r_base4.2.yaml +++ b/.ci_support/linux_64_r_base4.2.yaml @@ -1,7 +1,7 @@ c_compiler: - gcc c_compiler_version: -- '10' +- '11' cdt_name: - cos6 channel_sources: @@ -11,7 +11,7 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_r_base4.1.yaml b/.ci_support/linux_aarch64_r_base4.1.yaml index ad96522..413d8c6 100644 --- a/.ci_support/linux_aarch64_r_base4.1.yaml +++ b/.ci_support/linux_aarch64_r_base4.1.yaml @@ -3,7 +3,7 @@ BUILD: c_compiler: - gcc c_compiler_version: -- '10' +- '11' cdt_arch: - aarch64 cdt_name: @@ -15,7 +15,7 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 pin_run_as_build: diff --git a/.ci_support/linux_aarch64_r_base4.2.yaml b/.ci_support/linux_aarch64_r_base4.2.yaml index f92562e..2913bbb 100644 --- a/.ci_support/linux_aarch64_r_base4.2.yaml +++ b/.ci_support/linux_aarch64_r_base4.2.yaml @@ -3,7 +3,7 @@ BUILD: c_compiler: - gcc c_compiler_version: -- '10' +- '11' cdt_arch: - aarch64 cdt_name: @@ -15,7 +15,7 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '10' +- '11' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 pin_run_as_build: From fed9e16af5a6366fd40a7f0e7ca961c91748454d Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 7 Dec 2022 08:39:40 +1100 Subject: [PATCH 6/6] sync back changes from https://github.com/apache/arrow/pull/14832 --- recipe/build.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipe/build.sh b/recipe/build.sh index 5abe54e..8479d9d 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -3,7 +3,7 @@ set -ex export DISABLE_AUTOBREW=1 -# set C++17 due to abseil +# arrow uses C++17 export ARROW_R_CXXFLAGS="${ARROW_R_CXXFLAGS} -std=c++17" if [[ "${target_platform}" == osx-* ]]; then @@ -11,4 +11,5 @@ if [[ "${target_platform}" == osx-* ]]; then export ARROW_R_CXXFLAGS="${ARROW_R_CXXFLAGS} -D_LIBCPP_DISABLE_AVAILABILITY" fi +# ${R_ARGS} necessary to support cross-compilation ${R} CMD INSTALL --build r/. ${R_ARGS}