Build symbol-test with make instead of hardcoding in symbol-hiding.
authorAmadeusz Żołnowski <aidecoe@aidecoe.name>
Sat, 26 Nov 2011 21:14:20 +0000 (22:14 +0100)
committerDavid Bremner <bremner@debian.org>
Sun, 27 Nov 2011 16:03:04 +0000 (08:03 -0800)
If symbol-test is built in symbol-hiding with hardcoded g++ invokation,
it's not so easy to pass $(srcdir) which is required to find notmuch.h
when srcdir and builddir are separate directories.

test/.gitignore
test/Makefile.local
test/basic
test/symbol-hiding

index 9e97052d4c500c4c1d67b95022237e6a30d91dc5..7e30e8d5bc870fecce053659bde0a72d1727093d 100644 (file)
@@ -1,4 +1,5 @@
 test-results
 corpus.mail
 smtp-dummy
+symbol-test
 tmp.*
index 9b3308a1bbb511840818396a69b5d55125805e0b..646779e19fb7af0ba195d3bf601723d9ffbbc3bb 100644 (file)
@@ -11,10 +11,13 @@ smtp_dummy_modules = $(smtp_dummy_srcs:.c=.o)
 $(dir)/smtp-dummy: $(smtp_dummy_modules)
        $(call quiet,CC) $^ -o $@
 
+$(dir)/symbol-test: $(dir)/symbol-test.o
+       $(call quiet,CC) $^ -o $@ -Llib -lnotmuch -lxapian
+
 .PHONY: test check
-test:  all $(dir)/smtp-dummy
+test:  all $(dir)/smtp-dummy $(dir)/symbol-test
        @${dir}/notmuch-test $(OPTIONS)
 
 check: test
 
-CLEAN := $(CLEAN) $(dir)/smtp-dummy $(dir)/smtp-dummy.o
+CLEAN := $(CLEAN) $(dir)/smtp-dummy $(dir)/smtp-dummy.o $(dir)/symbol-test $(dir)/symbol-test.o
index f258d1f95e84082d9e2a2baa976cccb765be015e..4edf8315be8aaab92d648eddb8f1da70b1cef3ef 100755 (executable)
@@ -54,7 +54,7 @@ test_begin_subtest 'Ensure that all available tests will be run by notmuch-test'
 eval $(sed -n -e '/^TESTS="$/,/^"$/p' $TEST_DIRECTORY/notmuch-test)
 tests_in_suite=$(for i in $TESTS; do echo $i; done | sort)
 available=$(find "$TEST_DIRECTORY" -maxdepth 1 -type f -executable -printf '%f\n' | \
-    sed -r -e "/^(aggregate-results.sh|notmuch-test|smtp-dummy|test-verbose)$/d" | \
+    sed -r -e "/^(aggregate-results.sh|notmuch-test|smtp-dummy|test-verbose|symbol-test)$/d" | \
     sort)
 test_expect_equal "$tests_in_suite" "$available"
 
index d0b31aec115ce83b92f37b4fc3e161d9601cadb0..f67b653eb747a3d64a7d4b1ae518ec0c80ed4184 100755 (executable)
@@ -12,13 +12,12 @@ test_description='exception symbol hiding'
 . ./test-lib.sh
 
 run_test(){
-    result=$(LD_LIBRARY_PATH=$TEST_DIRECTORY/../lib ./symbol-test 2>&1)
+    result=$(LD_LIBRARY_PATH=$TEST_DIRECTORY/../lib $TEST_DIRECTORY/symbol-test 2>&1)
 }
 
 output="A Xapian exception occurred opening database: Couldn't stat 'fakedb/.notmuch/xapian'
 caught No chert database found at path \`./nonexistant'"
 
-g++ -o symbol-test -I$TEST_DIRECTORY/../lib $TEST_DIRECTORY/symbol-test.cc -L$TEST_DIRECTORY/../lib -lnotmuch -lxapian
 mkdir -p fakedb/.notmuch
 test_expect_success 'running test' run_test
 test_begin_subtest 'checking output'