# Copyright 2012, Google Inc. All rights reserved. # Use of this source code is governed by a BSD-style license that can # be found in the LICENSE file. # Import prepend_path function. dir="$(dirname "${BASH_SOURCE[0]}")" source "${dir}/tools/shell_functions.inc" if [ $? -ne 0 ]; then echo "failed to load tools/shell_functions.inc" return 1 fi export VTTOP=$(pwd) export VTROOT="${VTROOT:-${VTTOP/\/src\/github.com\/youtube\/vitess/}}" # VTTOP sanity check if [[ "$VTTOP" == "${VTTOP/\/src\/github.com\/youtube\/vitess/}" ]]; then echo "WARNING: VTTOP($VTTOP) does not contain src/github.com/youtube/vitess" fi export GOTOP=$VTTOP/go export PYTOP=$VTTOP/py export VTDATAROOT="$VTROOT/vtdataroot" mkdir -p $VTDATAROOT export VTPORTSTART=15000 export GO15VENDOREXPERIMENT=1 for pypath in $(find $VTROOT/dist -name site-packages -or -name dist-packages | grep -v src/python/grpcio/.tox/py27/lib/python2.7/site-packages) do export PYTHONPATH=$(prepend_path $PYTHONPATH $pypath) done export PYTHONPATH=$(prepend_path $PYTHONPATH $VTROOT/py-vtdb) export PYTHONPATH=$(prepend_path $PYTHONPATH $VTTOP/test) selenium_dist=$VTROOT/dist/selenium export PYTHONPATH=$(prepend_path $PYTHONPATH $selenium_dist) # Add the current GOBIN if [ "$GOBIN" ]; then export PATH=$(prepend_path $PATH $GOBIN) fi # Many tests rely on "go install" and assume GOBIN is really $VTROOT/bin. # Make sure these take precedence. export GOBIN=$VTROOT/bin export PATH=$(prepend_path $PATH $GOBIN) # If we have a custom built mysql, prefer it over the default installation. export PATH=$(prepend_path $PATH $VTROOT/dist/mysql/bin) # Add chromedriver to path for selenium tests export PATH=$(prepend_path $PATH $VTROOT/dist/chromedriver) # GOROOT sanity go_bin=`which go` go_env=`go env | grep GOROOT | cut -f 2 -d\"` if [ "$go_bin" -a "$go_bin" != "$go_env/bin/go" ]; then echo "WARNING: \$GOROOT may not compatible with the used go binary" echo "Please make sure 'go' comes from \$GOROOT/bin" echo "go_env: $go_env" echo "go_bin: $go_bin" fi # mysql install location. Please set based on your environment. # Build will not work if this is incorrect. if [[ "$VT_MYSQL_ROOT" == "" ]]; then if [[ "$(which mysql_config)" == "" ]]; then echo "WARNING: VT_MYSQL_ROOT unset because mysql_config not found. Did you install a client dev package?" else export VT_MYSQL_ROOT=$(dirname $(dirname $(which mysql_config))) fi fi # restore MYSQL_FLAVOR, saved by bootstrap.sh if [ -r $VTROOT/dist/MYSQL_FLAVOR ]; then export MYSQL_FLAVOR=`cat $VTROOT/dist/MYSQL_FLAVOR` fi # mysql cgo library config if [ -z "$MYSQL_FLAVOR" ]; then export MYSQL_FLAVOR=MariaDB fi case "$MYSQL_FLAVOR" in "MySQL56") ;; "MariaDB") export LD_LIBRARY_PATH=$(prepend_path $LD_LIBRARY_PATH $VT_MYSQL_ROOT/lib) export CGO_CFLAGS="$CGO_CFLAGS -I$VT_MYSQL_ROOT/include" ;; *) echo "Unsupported MYSQL_FLAVOR $MYSQL_FLAVOR" ;; esac export PKG_CONFIG_PATH=$(prepend_path $PKG_CONFIG_PATH $VTROOT/lib) # zookeeper cgo library config zk_ver=3.4.6 export CGO_CFLAGS="$CGO_CFLAGS -I$VTROOT/dist/vt-zookeeper-$zk_ver/include/zookeeper" export CGO_LDFLAGS="$CGO_LDFLAGS -L$VTROOT/dist/vt-zookeeper-$zk_ver/lib" export LD_LIBRARY_PATH=$(prepend_path $LD_LIBRARY_PATH $VTROOT/dist/vt-zookeeper-$zk_ver/lib) # needed to correctly import grpc if it's not installed globally grpc_dist=$VTROOT/dist/grpc if [ -f $grpc_dist/.build_finished ]; then export LD_LIBRARY_PATH=$(prepend_path $LD_LIBRARY_PATH $grpc_dist/usr/local/lib) fi export GOPATH=$(prepend_path $GOPATH $VTROOT) # Useful aliases. Remove if inconvenient. alias gt="cd $GOTOP" alias pt="cd $PYTOP" alias vt="cd $VTTOP"