diff --git a/.gitigmore b/.gitigmore new file mode 100644 index 00000000..42864aef --- /dev/null +++ b/.gitigmore @@ -0,0 +1 @@ +.dependencies diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e2f2ed47..efb5fa1e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,7 +7,7 @@ This doc is intended for contributors to `cadence-java-client` (hopefully that's ## Development Environment * Java 11 (currently, we use Java 11 to compile Java 8 code). -* Thrift 0.9.3 (use [homebrew](https://formulae.brew.sh/formula/thrift@0.9) or [distribution](https://downloads.apache.org/thrift/0.9.3/)) +* Thrift 0.9.3 (use [homebrew](https://formulae.brew.sh/formula/thrift@0.9) or [distribution](https://downloads.apache.org/thrift/0.9.3/)). Alternatively you can install with `scripts/install-thrift-locally-osx.sh`. * Gradle build tool [6.x](https://github.com/uber/cadence-java-client/blob/master/gradle/wrapper/gradle-wrapper.properties) * Docker diff --git a/scripts/install-thrift-locally-osx.sh b/scripts/install-thrift-locally-osx.sh new file mode 100755 index 00000000..3b89a262 --- /dev/null +++ b/scripts/install-thrift-locally-osx.sh @@ -0,0 +1,39 @@ +#!/bin/bash -e + +cd $(dirname $0)/.. + +if [[ ! -d .dependencies ]]; then + mkdir .dependencies +fi + +cd .dependencies +rm -rf thrift +mkdir thrift +cd thrift + +APACHE_THRIFT_VERSION=0.9.3 + +brew install bison + +# macs have an old versiion of bison hanging around typically +# so override it by using the brew version in PATH +export PATH="/opt/homebrew/opt/bison/bin:$PATH" + +wget https://archive.apache.org/dist/thrift/${APACHE_THRIFT_VERSION}/thrift-${APACHE_THRIFT_VERSION}.tar.gz && \ + +tar -xvf thrift-${APACHE_THRIFT_VERSION}.tar.gz +rm thrift-${APACHE_THRIFT_VERSION}.tar.gz +cd thrift-${APACHE_THRIFT_VERSION}/ + +./configure --enable-libs=no --enable-tests=no --enable-tutorial=no --with-cpp=no --with-c_glib=no --with-java=yes --with-ruby=no --with-erlang=no --with-go=no --with-nodejs=no --with-python=no && \ + +make +echo "" +echo "thrift expects to be globally installed :/" +echo "asking do do with sudo to install to /usr/local/bin" +echo "" +sudo make install && \ +cd .. && \ +rm -rf thrift-${APACHE_THRIFT_VERSION} +thrift --version +echo "done"