| # 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 we are building from within the nanoarrow repo, bootstrap.R will (1) |
| # exist and (2) perform the necessary vendoring steps |
| if [ -f bootstrap.R ]; then |
| $R_HOME/bin/Rscript bootstrap.R |
| fi |
| |
| if [ -f "src/nanoarrow.h" ] && [ -f "src/nanoarrow.c" ]; then |
| echo "Found vendored nanoarrow" |
| exit 0 |
| fi |
| |
| # We have a situation where the package has been built via R CMD build |
| # but there is no vendored nanoarrow. This occurs with |
| # remotes::install_github() with the default arguments. In this case, pull |
| # the latest bundled version from GitHub. To ensure commit-level consistency, |
| # use remotes::install_github(build = FALSE) (which will run cmake to get |
| # a fresh bundle with a specific commit). |
| curl -L https://github.com/apache/arrow-nanoarrow/raw/main/dist/nanoarrow.h \ |
| --output src/nanoarrow.h --silent |
| curl -L https://github.com/apache/arrow-nanoarrow/raw/main/dist/nanoarrow.c \ |
| --output src/nanoarrow.c --silent |
| |
| if [ -f "src/nanoarrow.h" ] && [ -f "src/nanoarrow.c" ]; then |
| echo "Fetched bundled nanoarrow from https://github.com/apache/arrow-nanoarrow/tree/main/dist" |
| exit 0 |
| fi |
| |
| echo "Vendored src/nanoarrow.h and/or src/nanoarrow.c are missing" |
| echo "This source tarball was built incorrectly." |
| exit 1 |