Skip to content

Commit

Permalink
ARROW-1662: Move to using Homebrew/bundle and Brewfile
Browse files Browse the repository at this point in the history
improves osx dependency management

Author: Stephen G <[email protected]>
Author: Stephen <[email protected]>
Author: Stephen Groat <[email protected]>

Closes apache#1143 from stephengroat/osx-brew and squashes the following commits:

81d4ac1 [Stephen G] Merge branch 'osx-brew' of https://github.com/stephengroat/arrow into osx-brew
62a7929 [Stephen G] Add license headers
cee779b [Stephen] increase to max travis_wait
583ec0a [Stephen G] Move to individual brewfiles
6514855 [Stephen] add travis wait to get around timeouts
6faef0c [Stephen Groat] Move to using Homebrew/bundle and Brewfile
  • Loading branch information
stephengroat authored and wesm committed Oct 11, 2017
1 parent ee78cdc commit 4cb3e97
Show file tree
Hide file tree
Showing 9 changed files with 73 additions and 14 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ matrix:
before_script:
- export ARROW_TRAVIS_USE_TOOLCHAIN=1
- export ARROW_TRAVIS_PLASMA=1
- $TRAVIS_BUILD_DIR/ci/travis_before_script_cpp.sh
- travis_wait 50 $TRAVIS_BUILD_DIR/ci/travis_before_script_cpp.sh
script:
- $TRAVIS_BUILD_DIR/ci/travis_script_cpp.sh
- $TRAVIS_BUILD_DIR/ci/travis_build_parquet_cpp.sh
Expand Down
25 changes: 25 additions & 0 deletions c_glib/Brewfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# 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
#
# https://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.

brew "gtk-doc"
brew "autoconf-archive"
brew "gobject-introspection"
brew "git"
brew "cmake"
brew "wget"
brew "libtool"
brew "lua"
6 changes: 1 addition & 5 deletions ci/travis_before_script_c_glib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,14 @@ set -ex
source $TRAVIS_BUILD_DIR/ci/travis_env_common.sh

if [ $TRAVIS_OS_NAME == "osx" ]; then
brew install gtk-doc autoconf-archive gobject-introspection
brew upgrade git cmake
brew outdated || brew upgrade wget
brew outdated || brew upgrade libtool
brew update && brew bundle --file=c_glib/Brewfile

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opt/libffi/lib/pkgconfig
fi

gem install test-unit gobject-introspection

if [ $TRAVIS_OS_NAME == "osx" ]; then
brew install lua
sudo env PKG_CONFIG_PATH=$PKG_CONFIG_PATH luarocks install lgi
else
git clone \
Expand Down
4 changes: 1 addition & 3 deletions ci/travis_before_script_cpp.sh
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,7 @@ if [ "$ARROW_TRAVIS_USE_TOOLCHAIN" == "1" ]; then
fi

if [ $TRAVIS_OS_NAME == "osx" ]; then
brew update > /dev/null
brew install jemalloc
brew install ccache
brew update && brew bundle --file=cpp/Brewfile
fi

mkdir $ARROW_CPP_BUILD_DIR
Expand Down
21 changes: 21 additions & 0 deletions cpp/Brewfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# 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
#
# https://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.

brew "jemalloc"
brew "ccache"
brew "boost"
brew "cmake"
2 changes: 1 addition & 1 deletion cpp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ sudo apt-get install cmake \
On OS X, you can use [Homebrew][1]:

```shell
brew install boost cmake
brew update && brew bundle --file=cpp/Brewfile
```

If you are developing on Windows, see the [Windows developer guide][2].
Expand Down
21 changes: 21 additions & 0 deletions python/Brewfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# 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
#
# https://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.

brew "ccache"
brew "jemalloc"
brew "boost"
brew "thrift"
2 changes: 1 addition & 1 deletion python/doc/source/development.rst
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ building Arrow C++:

.. code-block:: shell
brew install ccache jemalloc boost thrift
brew update && brew bundle --file=python/Brewfile
On Debian/Ubuntu, you need the following minimal set of dependencies. All other
dependencies will be automatically built by Arrow' thrid-party toolchain.
Expand Down
4 changes: 1 addition & 3 deletions python/testing/setup_toolchain.sh
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,5 @@ conda create -y -q -p $CPP_TOOLCHAIN python=3.6 \
ninja

if [ $BUILD_OS_NAME == "osx" ]; then
brew update > /dev/null
brew install jemalloc
brew install ccache
brew update && brew bundle --file=python/Brewfile
fi

0 comments on commit 4cb3e97

Please sign in to comment.