This could explain some of the problems I had to get the test suite running. I would have never guessed that LD_LIBRARY_PATH gets overwritten by the test suite. On 16-05-26, Tomi Ollila wrote: > Previously LD_LIBRARY_PATH was exported (and environment changed) > in the middle of test case execution, when a function setting it > was called. > > Previously the old contents of LD_LIBRARY_PATH was lost (if any) > when it was re-set and exported. In some systems the old contents of > LD_LIBRARY_PATH was needed to e.g. locate suitable gmime library. > --- > > This series (of 2 patches) has exactly same payload as the previous > version: > id:1460738800-9021-1-git-send-email-tomi.ollila@iki.fi > > commit messages are updated to be accurate (? :) this time. > > test/T360-symbol-hiding.sh | 5 ++--- > test/test-lib-common.sh | 5 +++++ > test/test-lib.sh | 3 --- > 3 files changed, 7 insertions(+), 6 deletions(-) > > diff --git a/test/T360-symbol-hiding.sh b/test/T360-symbol-hiding.sh > index 3f18ec1a34fc..9c10e8eda07f 100755 > --- a/test/T360-symbol-hiding.sh > +++ b/test/T360-symbol-hiding.sh > @@ -13,9 +13,8 @@ test_description='exception symbol hiding' > > test_begin_subtest 'running test' run_test > mkdir -p ${PWD}/fakedb/.notmuch > -( LD_LIBRARY_PATH="$TEST_DIRECTORY/../lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" \ > - $TEST_DIRECTORY/symbol-test ${PWD}/fakedb ${PWD}/nonexistent \ > - 2>&1 | notmuch_dir_sanitize | sed -e "s,\`,\',g" -e "s,${NOTMUCH_DEFAULT_XAPIAN_BACKEND},backend,g") > OUTPUT > +$TEST_DIRECTORY/symbol-test ${PWD}/fakedb ${PWD}/nonexistent 2>&1 \ > + | notmuch_dir_sanitize | sed -e "s,\`,\',g" -e "s,${NOTMUCH_DEFAULT_XAPIAN_BACKEND},backend,g" > OUTPUT > > cat <<EOF > EXPECTED > A Xapian exception occurred opening database: Couldn't stat 'CWD/fakedb/.notmuch/xapian' > diff --git a/test/test-lib-common.sh b/test/test-lib-common.sh > index ba4a8e112084..026440ccc057 100644 > --- a/test/test-lib-common.sh > +++ b/test/test-lib-common.sh > @@ -52,6 +52,11 @@ restore_database () { > TEST_DIRECTORY=$(pwd -P) > notmuch_path=`find_notmuch_path "$TEST_DIRECTORY"` > > +# Prepend $TEST_DIRECTORY/../lib to LD_LIBRARY_PATH, to make tests work > +# on systems where ../notmuch depends on LD_LIBRARY_PATH. > +LD_LIBRARY_PATH=${TEST_DIRECTORY%/*}/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} > +export LD_LIBRARY_PATH > + > # configure output > . $notmuch_path/sh.config || exit 1 > > diff --git a/test/test-lib.sh b/test/test-lib.sh > index 62e123d65aba..a7e6397c324e 100644 > --- a/test/test-lib.sh > +++ b/test/test-lib.sh > @@ -1171,7 +1171,6 @@ test_emacs () { > } > > test_python() { > - export LD_LIBRARY_PATH=$TEST_DIRECTORY/../lib > export PYTHONPATH=$TEST_DIRECTORY/../bindings/python > > (echo "import sys; _orig_stdout=sys.stdout; sys.stdout=open('OUTPUT', 'w')"; cat) \ > @@ -1179,7 +1178,6 @@ test_python() { > } > > test_ruby() { > - export LD_LIBRARY_PATH=$TEST_DIRECTORY/../lib > MAIL_DIR=$MAIL_DIR ruby -I $TEST_DIRECTORY/../bindings/ruby> OUTPUT > } > > @@ -1187,7 +1185,6 @@ test_C () { > exec_file="test${test_count}" > test_file="${exec_file}.c" > cat > ${test_file} > - export LD_LIBRARY_PATH=${TEST_DIRECTORY}/../lib > ${TEST_CC} ${TEST_CFLAGS} -I${TEST_DIRECTORY}/../lib -o ${exec_file} ${test_file} -L${TEST_DIRECTORY}/../lib/ -lnotmuch -ltalloc > echo "== stdout ==" > OUTPUT.stdout > echo "== stderr ==" > OUTPUT.stderr > -- > 2.8.2 > > _______________________________________________ > notmuch mailing list > notmuch@notmuchmail.org > https://notmuchmail.org/mailman/listinfo/notmuch