vitess-gh/dev.env

114 строки
3.3 KiB
Bash

# 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.
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
function prepend_path()
{
# $1 path variable
# $2 path to add
if [ -d "$2" ] && [[ ":$1:" != *":$2:"* ]]; then
echo "$2:$1"
else
echo "$1"
fi
if [ -d "$1" ] && [[ ":$PATH:" != *":$1:"* ]]; then
export PATH="$1:$PATH"
fi
}
for pypath in $(find $VTROOT/dist -name site-packages)
do
export PYTHONPATH=$(prepend_path $PYTHONPATH $pypath)
done
export PYTHONPATH=$(prepend_path $PYTHONPATH $VTROOT/py-vtdb)
# 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)
# 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/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"