| #!/bin/bash |
| # |
| # 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. |
| # |
| |
| merge_paths() { |
| # Merge paths, remove duplicates (keep first instance) |
| path=$(echo $* | sed 's/:/ /'g) # Split with spaces. |
| newpath="" |
| for d in $path; do # Remove duplicates |
| { echo $newpath | grep -q "\(:\|^\)$d\(:\|$\)"; } || newpath="$newpath:$d" |
| done |
| echo $newpath | sed 's/^://' # Remove leading : |
| } |
| |
| PROTON_HOME=@CMAKE_SOURCE_DIR@ |
| PROTON_BUILD=@CMAKE_BINARY_DIR@ |
| |
| PYTHON_BINDING=$PROTON_BUILD/python |
| |
| # Python |
| COMMON_PYPATH=$PROTON_HOME/python/tests:$PROTON_HOME/python:$PROTON_HOME/tools/python |
| export PYTHONPATH=$COMMON_PYPATH:$PYTHON_BINDING |
| |
| # Ruby |
| RUBY_BINDING=$PROTON_BUILD/ruby |
| RUBY_SRC=$PROTON_HOME/ruby |
| export RUBYLIB=$RUBY_BINDING:$RUBY_SRC/lib:$RUBY_SRC/tests:$RUBY_SRC/spec |
| |
| # Go |
| export GOPATH="$PROTON_BUILD/go" |
| # Help Go compiler find libraries and include files. |
| export C_INCLUDE_PATH="$(merge_paths $PROTON_HOME/include $PROTON_BUILD/include $C_INCLUDE_PATH)" |
| export LIBRARY_PATH="$(merge_paths $PROTON_BUILD $LIBRARY_PATH)" |
| export LD_LIBRARY_PATH="$(merge_paths $PROTON_BUILD $LD_LIBRARY_PATH)" |
| |
| # Test applications |
| export PATH="$(merge_paths $PATH $PROTON_BUILD/c/tools $PROTON_HOME/python/tests)" |
| |
| # Can the test harness use saslpasswd2? |
| if [[ -x "$(type -p saslpasswd2)" ]] ; then |
| export SASLPASSWD=$(type -p saslpasswd2) |
| fi |
| |
| # Location of interop test files. |
| export PN_INTEROP_DIR=$PROTON_HOME/tests/interop |