tests: Add symtab test suite

Add (Catch based) test suite to test symbol table reading through the
result persisted in abigail::corpus.

The test cases are created through simple C source files targeting the
desired properties (having an undefined/export function or both). The
Makefile that comes with them recreates the test cases from the sources.

This covers reading sorted_(undefined_)var|fun_symbols as well as the
corresponding symbols maps accessible through the accessors of
abigail::corpus.

	* tests/Makefile.am: add new test runtestsymtab
	* tests/data/Makefile.am: add new test data for runtestsymtab
	* tests/data/test-symtab/Makefile: Add this to build the binaries
	below from their source code.
	* tests/data/test-symtab/basic/empty.c: New test case source.
	* tests/data/test-symtab/basic/link_against_me.c: Likewise.
	* tests/data/test-symtab/basic/no_debug_info.c: Likewise.
	* tests/data/test-symtab/basic/one_function_one_variable.c: Likewise.
	* tests/data/test-symtab/basic/one_function_one_variable_undefined.c: Likewise.
	* tests/data/test-symtab/basic/single_function.c: Likewise.
	* tests/data/test-symtab/basic/single_undefined_function.c: Likewise.
	* tests/data/test-symtab/basic/single_undefined_variable.c: Likewise.
	* tests/data/test-symtab/basic/single_variable.c: Likewise.
	* tests/data/test-symtab/basic/empty.so: New test data, built from
	the Makefile above.
	* tests/data/test-symtab/basic/link_against_me.so: Likewise.
	* tests/data/test-symtab/basic/no_debug_info.so: Likewise.
	* tests/data/test-symtab/basic/one_function_one_variable.so: Likewise.
	* tests/data/test-symtab/basic/one_function_one_variable_undefined.so: Likewise.
	* tests/data/test-symtab/basic/single_function.so: Likewise.
	* tests/data/test-symtab/basic/single_undefined_function.so: Likewise.
	* tests/data/test-symtab/basic/single_undefined_variable.so: Likewise.
	* tests/data/test-symtab/basic/single_variable.so: Likewise.
	* tests/test-symtab.cc: New test driver.

Signed-off-by: Matthias Maennich <maennich@google.com>
Signed-off-by: Dodji Seketeli <dodji@redhat.com>
22 files changed