libabigail/tests/Makefile.am

234 lines
7.8 KiB
Makefile
Raw Normal View History

h=$(abs_srcdir)
TESTS= \
runtestreadwrite \
runtestwritereadarchive \
runtestreaddwarf \
runtestcorediff \
runtestbidiff \
runtestdiffdwarf \
Take filtering in account in diff stats & better categorizing * include/abg-comparison.h (diff_category::ACCESS_CHANGE_CATEGORY): Renamed ACCESS_CHANGED_CATEGORY into this. (diff_category::SIZE_OR_OFFSET_CHANGE_CATEGORY): Renamed SIZE_CHANGED_CATEGORY into this. Changed its semantics to incorporate offset changes as well. * src/abg-comparison.cc (struct noop_deleter): Move this up. (represent): Do not report filtered out data members. (report_mem_header): Add a new num_filtered parameter to take filtered-out members in account in members report headers. Adjust. (class_diff::priv::{count_filtered_bases, count_filtered_data_members, count_filtered_member_functions}): New member functions. When a member is filtered, do not report it all. ({enum_diff, class_diff}::report): Adjust. Take filtered members into account in headers. (corpus_diff::priv::apply_filters_and_compute_diff_stats): New member function. (corpus_diff::priv::emit_diff_stats): Renamed emit_corpus_diff_stats into this. Change it to take the stats in parameter. (corpus_diff::report): Adjust to re-use the above. Filter varibles as well. Take the filtered functions & variables in account in the stats. Do not report filtered-out functions & variables at all. * src/abg-comp-filter.cc (type_size_changed, access_changed) (data_member_offset_changed): New predicates. ({harmless, harmful}_filter::visit): Adjust to use the new predicates above. Update the harmful variant for the new SIZE_OR_OFFSET_CHANGE_CATEGORY category. * tools/bidiff.cc (set_diff_context_from_opts): Adjust for the categories name changes. * tests/data/test-diff-filter/test0-report.txt: New test input. * tests/data/test-diff-filter/test0-v0.cc: Likewise. * tests/data/test-diff-filter/test0-v0.o: Likewise. * tests/data/test-diff-filter/test0-v1.cc: Likewise. * tests/data/test-diff-filter/test0-v1.o: Likewise. * tests/test-diff-filter.cc: New test harness. * tests/Makefile.am: Add the new test files above to the distribution. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-03-29 05:44:13 +00:00
runtestdifffilter \
runtestsvg \
Initial DOT work. * doc/vizualization/layout/scripts/ (inkscape_export_svg_to_plain_svg.sh): Move... (inkscape_export_svg_to_png_and_pdf.sh): Move... * scripts: ..here. New toplevel directory. * scripts/scripts/dot_to_png.sh: New. * scripts/scripts/dot_to_svg.sh: New. * src/Makefile.am: Add abg-viz-dot.cc, abg-viz-dot.h. * tests/Makefile.am: Add test-dot.cc. * src/abg-viz-dot.cc: New. * src/abg-viz-dot.h: New. * tests/test-dot.cc: New. * doc/vizualization/graph: New. * doc/vizualization/graph/gv/sa-A.gv: New. * doc/vizualization/graph/gv/sa-B.gv: New. * doc/vizualization/graph/gv/sa-C1.gv: New. * doc/vizualization/graph/gv/sa-C2.gv: New. * doc/vizualization/graph/gv/sa-C3.gv: New. * doc/vizualization/graph/gv/sa-C4.gv: New. * doc/vizualization/graph/gv/sa-D1.gv: New. * doc/vizualization/graph/gv/sa-D2.gv: New. * doc/vizualization/graph/gv/sa-D2v.gv: New. * doc/vizualization/graph/gv/sa-D3.gv: New. * doc/vizualization/graph/gv/sa-D3v.gv: New. * doc/vizualization/graph/gv/sa-D4v.gv: New. * doc/vizualization/graph/gv/sa-D5v1.gv: New. * doc/vizualization/graph/gv/sa-D5v2.gv: New. * doc/vizualization/graph/gv/sa-DD1.gv: New. * doc/vizualization/graph/gv/sa-DD2.gv: New. * doc/vizualization/graph/gv/sa-DD3.gv: New. * doc/vizualization/graph/gv/sa-DD4.gv: New. * doc/vizualization/graph/gv/sa-DD5.gv: New. * doc/vizualization/graph/gv/sa-base.gv: New. * doc/vizualization/graph/png/sa-A.png: New. * doc/vizualization/graph/png/sa-B.png: New. * doc/vizualization/graph/png/sa-C1.png: New. * doc/vizualization/graph/png/sa-C2.png: New. * doc/vizualization/graph/png/sa-C3.png: New. * doc/vizualization/graph/png/sa-C4.png: New. * doc/vizualization/graph/png/sa-D1.png: New. * doc/vizualization/graph/png/sa-D2.png: New. * doc/vizualization/graph/png/sa-D2v.png: New. * doc/vizualization/graph/png/sa-D3.png: New. * doc/vizualization/graph/png/sa-D3v.png: New. * doc/vizualization/graph/png/sa-D4v.png: New. * doc/vizualization/graph/png/sa-D5v1.png: New. * doc/vizualization/graph/png/sa-D5v2.png: New. * doc/vizualization/graph/png/sa-DD1.png: New. * doc/vizualization/graph/png/sa-DD2.png: New. * doc/vizualization/graph/png/sa-DD3.png: New. * doc/vizualization/graph/png/sa-DD4.png: New. * doc/vizualization/graph/png/sa-DD5.png: New. * doc/vizualization/graph/png/sa-base.png: New. * doc/vizualization/graph/sources/sa-A.cc: New. * doc/vizualization/graph/sources/sa-B.cc: New. * doc/vizualization/graph/sources/sa-C.cc: New. * doc/vizualization/graph/sources/sa-D.cc: New. * doc/vizualization/graph/sources/sa-DD.cc: New. * doc/vizualization/graph/sources/sa-base.cc: New. * doc/vizualization/graph/svg/sa-A.svg: New. * doc/vizualization/graph/svg/sa-B.svg: New. * doc/vizualization/graph/svg/sa-C1.svg: New. * doc/vizualization/graph/svg/sa-C2.svg: New. * doc/vizualization/graph/svg/sa-C3.svg: New. * doc/vizualization/graph/svg/sa-C4.svg: New. * doc/vizualization/graph/svg/sa-D1.svg: New. * doc/vizualization/graph/svg/sa-D2.svg: New. * doc/vizualization/graph/svg/sa-D2v.svg: New. * doc/vizualization/graph/svg/sa-D3.svg: New. * doc/vizualization/graph/svg/sa-D3v.svg: New. * doc/vizualization/graph/svg/sa-D4v.svg: New. * doc/vizualization/graph/svg/sa-D5v1.svg: New. * doc/vizualization/graph/svg/sa-D5v2.svg: New. * doc/vizualization/graph/svg/sa-DD1.svg: New. * doc/vizualization/graph/svg/sa-DD2.svg: New. * doc/vizualization/graph/svg/sa-DD3.svg: New. * doc/vizualization/graph/svg/sa-DD4.svg: New. * doc/vizualization/graph/svg/sa-DD5.svg: New. * doc/vizualization/graph/svg/sa-base.svg: New.
2013-07-02 01:08:18 +00:00
runtestdot
noinst_PROGRAMS= $(TESTS) testirwalker testdiff2
noinst_LTLIBRARIES = libtestutils.la
Initial writing/reading of an ABI corpus to an archive * configure.ac: Support detection of libzip dependency. Define new DEPS_CFLAGS and DEPS_LIBS variables for use in Makefile.am to refer to the dependency headers and libraries. * doc/website/mainpage.txt: Update this to talk about the new libzip dependency. * include/Makefile.am: Add abg-libzip-utils.h to the build system. * include/abg-corpus.h (corps): Hide abigail::corpus's private behind a pimpl idiom. (corpus::{drop_translation_units, get_file_path, set_file_path, write, read}): New methods. * include/abg-libxml-utils.h (new_reader_from_buffer): Declare new function. * include/abg-libzip-utils.h: New file. * src/Makefile.am: Add abg-corpus.cc and abg-libzip-utils.cc to the build system. Refer to the library and headers dependencies via the new DEPS_LIBS and DEPS_CFLAGS variables. * src/abg-corpus.cc: New file. * src/abg-ir.cc (translation::set_path): New method. * src/abg-libxml-utils.cc (new_reader_from_buffer): Define new function. * src/abg-libzip-utils.cc: New file. * src/abg-reader.cc (translation_unit::read): New overload. * src/abg-writer.cc: Inject the names from the std namespace into the abigail namespace, rather than into abigail::writer. (abigail::translation_unit::write): New overload. This can now use ofstream and the other stuff from std that are injected in the abigail:: namespace. * tests/Makefile.am: Add tests/test-write-read-archive.cc to the build system; use that to build runtestwritereadarchive. Also add the input test data from tests/data/test-write-read-archive/test[0-4].xml. * /tests/data/test-write-read-archive/test[0-4].xml: New test input data files. * tests/test-write-read-archive.cc: New test for this archive write/read support. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-27 13:18:59 +00:00
libtestutils_la_SOURCES= \
test-utils.h \
test-utils.cc
Initial version of an archive manipulation program: biar * tests/test-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Move these directories manipulation utilities from here to ... * tools/abg-tools-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Declare these new functions. * tests/test-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Likewise, move these to ... * tools/abg-tools-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Define these. * tools/Makefile.am: New file. Create a new libtoolsutils.la static library with stuff from tools/abg-tools-utils.cc in it. Also create a new 'biar' program with the stuff from the new tools/biar.cc in it. * tools/biar.cc: New file. Contains the code for the new "biar" archive manipulation command line utility. * tests/test-read-write.cc (main): Adjust for the change about ensure_parent_dir_created above. * tests/test-write-read-archive.cc (main): Likewise. * Makefile.am (SUBDIRS): Add the new tools/ sub-directory to the build system. * configure.ac (AC_CONFIG_FILES): Generate tools/Makefile. * tests/Makefile.am: Make libtestutils.la link with the new libtoolsutils.la. Make sure to express the dependencies between libtestutils.la and the binaries that depend on it. Otherwise parallel builds can go awry. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-29 15:08:47 +00:00
libtestutils_la_LIBADD=$(top_builddir)/tools/libtoolsutils.la
libtestutils_la_DEPENDENCIES=$(top_builddir)/tools/libtoolsutils.la
libtestutils_la_CXXFLAGS= \
Initial version of an archive manipulation program: biar * tests/test-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Move these directories manipulation utilities from here to ... * tools/abg-tools-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Declare these new functions. * tests/test-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Likewise, move these to ... * tools/abg-tools-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Define these. * tools/Makefile.am: New file. Create a new libtoolsutils.la static library with stuff from tools/abg-tools-utils.cc in it. Also create a new 'biar' program with the stuff from the new tools/biar.cc in it. * tools/biar.cc: New file. Contains the code for the new "biar" archive manipulation command line utility. * tests/test-read-write.cc (main): Adjust for the change about ensure_parent_dir_created above. * tests/test-write-read-archive.cc (main): Likewise. * Makefile.am (SUBDIRS): Add the new tools/ sub-directory to the build system. * configure.ac (AC_CONFIG_FILES): Generate tools/Makefile. * tests/Makefile.am: Make libtestutils.la link with the new libtoolsutils.la. Make sure to express the dependencies between libtestutils.la and the binaries that depend on it. Otherwise parallel builds can go awry. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-29 15:08:47 +00:00
-DABIGAIL_SRC_DIR=\"${abs_top_srcdir}\" \
-DABIGAIL_BUILD_DIR=\"${abs_top_builddir}\"
runtestreadwrite_SOURCES=$(h)/test-read-write.cc
runtestreadwrite_LDADD=libtestutils.la $(top_builddir)/src/libabigail.la
Initial writing/reading of an ABI corpus to an archive * configure.ac: Support detection of libzip dependency. Define new DEPS_CFLAGS and DEPS_LIBS variables for use in Makefile.am to refer to the dependency headers and libraries. * doc/website/mainpage.txt: Update this to talk about the new libzip dependency. * include/Makefile.am: Add abg-libzip-utils.h to the build system. * include/abg-corpus.h (corps): Hide abigail::corpus's private behind a pimpl idiom. (corpus::{drop_translation_units, get_file_path, set_file_path, write, read}): New methods. * include/abg-libxml-utils.h (new_reader_from_buffer): Declare new function. * include/abg-libzip-utils.h: New file. * src/Makefile.am: Add abg-corpus.cc and abg-libzip-utils.cc to the build system. Refer to the library and headers dependencies via the new DEPS_LIBS and DEPS_CFLAGS variables. * src/abg-corpus.cc: New file. * src/abg-ir.cc (translation::set_path): New method. * src/abg-libxml-utils.cc (new_reader_from_buffer): Define new function. * src/abg-libzip-utils.cc: New file. * src/abg-reader.cc (translation_unit::read): New overload. * src/abg-writer.cc: Inject the names from the std namespace into the abigail namespace, rather than into abigail::writer. (abigail::translation_unit::write): New overload. This can now use ofstream and the other stuff from std that are injected in the abigail:: namespace. * tests/Makefile.am: Add tests/test-write-read-archive.cc to the build system; use that to build runtestwritereadarchive. Also add the input test data from tests/data/test-write-read-archive/test[0-4].xml. * /tests/data/test-write-read-archive/test[0-4].xml: New test input data files. * tests/test-write-read-archive.cc: New test for this archive write/read support. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-27 13:18:59 +00:00
runtestwritereadarchive_SOURCES=$(h)/test-write-read-archive.cc
Initial version of an archive manipulation program: biar * tests/test-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Move these directories manipulation utilities from here to ... * tools/abg-tools-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Declare these new functions. * tests/test-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Likewise, move these to ... * tools/abg-tools-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Define these. * tools/Makefile.am: New file. Create a new libtoolsutils.la static library with stuff from tools/abg-tools-utils.cc in it. Also create a new 'biar' program with the stuff from the new tools/biar.cc in it. * tools/biar.cc: New file. Contains the code for the new "biar" archive manipulation command line utility. * tests/test-read-write.cc (main): Adjust for the change about ensure_parent_dir_created above. * tests/test-write-read-archive.cc (main): Likewise. * Makefile.am (SUBDIRS): Add the new tools/ sub-directory to the build system. * configure.ac (AC_CONFIG_FILES): Generate tools/Makefile. * tests/Makefile.am: Make libtestutils.la link with the new libtoolsutils.la. Make sure to express the dependencies between libtestutils.la and the binaries that depend on it. Otherwise parallel builds can go awry. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-29 15:08:47 +00:00
runtestwritereadarchive_LDADD= libtestutils.la $(top_builddir)/src/libabigail.la $(top_builddir)/tools/libtoolsutils.la
Initial writing/reading of an ABI corpus to an archive * configure.ac: Support detection of libzip dependency. Define new DEPS_CFLAGS and DEPS_LIBS variables for use in Makefile.am to refer to the dependency headers and libraries. * doc/website/mainpage.txt: Update this to talk about the new libzip dependency. * include/Makefile.am: Add abg-libzip-utils.h to the build system. * include/abg-corpus.h (corps): Hide abigail::corpus's private behind a pimpl idiom. (corpus::{drop_translation_units, get_file_path, set_file_path, write, read}): New methods. * include/abg-libxml-utils.h (new_reader_from_buffer): Declare new function. * include/abg-libzip-utils.h: New file. * src/Makefile.am: Add abg-corpus.cc and abg-libzip-utils.cc to the build system. Refer to the library and headers dependencies via the new DEPS_LIBS and DEPS_CFLAGS variables. * src/abg-corpus.cc: New file. * src/abg-ir.cc (translation::set_path): New method. * src/abg-libxml-utils.cc (new_reader_from_buffer): Define new function. * src/abg-libzip-utils.cc: New file. * src/abg-reader.cc (translation_unit::read): New overload. * src/abg-writer.cc: Inject the names from the std namespace into the abigail namespace, rather than into abigail::writer. (abigail::translation_unit::write): New overload. This can now use ofstream and the other stuff from std that are injected in the abigail:: namespace. * tests/Makefile.am: Add tests/test-write-read-archive.cc to the build system; use that to build runtestwritereadarchive. Also add the input test data from tests/data/test-write-read-archive/test[0-4].xml. * /tests/data/test-write-read-archive/test[0-4].xml: New test input data files. * tests/test-write-read-archive.cc: New test for this archive write/read support. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-27 13:18:59 +00:00
runtestreaddwarf_SOURCES=$(h)/test-read-dwarf.cc
runtestreaddwarf_LDADD=libtestutils.la $(top_builddir)/src/libabigail.la
runtestcorediff_SOURCES=$(h)/test-core-diff.cc
runtestcorediff_LDADD=libtestutils.la $(top_builddir)/src/libabigail.la
runtestbidiff_SOURCES = $(h)/test-bidiff.cc
runtestbidiff_LDADD = libtestutils.la $(top_builddir)/src/libabigail.la
runtestdiffdwarf_SOURCES = $(h)/test-diff-dwarf.cc
runtestdiffdwarf_LDADD = libtestutils.la $(top_builddir)/src/libabigail.la
Take filtering in account in diff stats & better categorizing * include/abg-comparison.h (diff_category::ACCESS_CHANGE_CATEGORY): Renamed ACCESS_CHANGED_CATEGORY into this. (diff_category::SIZE_OR_OFFSET_CHANGE_CATEGORY): Renamed SIZE_CHANGED_CATEGORY into this. Changed its semantics to incorporate offset changes as well. * src/abg-comparison.cc (struct noop_deleter): Move this up. (represent): Do not report filtered out data members. (report_mem_header): Add a new num_filtered parameter to take filtered-out members in account in members report headers. Adjust. (class_diff::priv::{count_filtered_bases, count_filtered_data_members, count_filtered_member_functions}): New member functions. When a member is filtered, do not report it all. ({enum_diff, class_diff}::report): Adjust. Take filtered members into account in headers. (corpus_diff::priv::apply_filters_and_compute_diff_stats): New member function. (corpus_diff::priv::emit_diff_stats): Renamed emit_corpus_diff_stats into this. Change it to take the stats in parameter. (corpus_diff::report): Adjust to re-use the above. Filter varibles as well. Take the filtered functions & variables in account in the stats. Do not report filtered-out functions & variables at all. * src/abg-comp-filter.cc (type_size_changed, access_changed) (data_member_offset_changed): New predicates. ({harmless, harmful}_filter::visit): Adjust to use the new predicates above. Update the harmful variant for the new SIZE_OR_OFFSET_CHANGE_CATEGORY category. * tools/bidiff.cc (set_diff_context_from_opts): Adjust for the categories name changes. * tests/data/test-diff-filter/test0-report.txt: New test input. * tests/data/test-diff-filter/test0-v0.cc: Likewise. * tests/data/test-diff-filter/test0-v0.o: Likewise. * tests/data/test-diff-filter/test0-v1.cc: Likewise. * tests/data/test-diff-filter/test0-v1.o: Likewise. * tests/test-diff-filter.cc: New test harness. * tests/Makefile.am: Add the new test files above to the distribution. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-03-29 05:44:13 +00:00
runtestdifffilter_SOURCES = $(h)/test-diff-filter.cc
runtestdifffilter_LDADD = libtestutils.la $(top_builddir)/src/libabigail.la
runtestsvg_SOURCES=$(h)/test-svg.cc
runtestsvg_LDADD=$(top_builddir)/src/libabigail.la
runtestdot_SOURCES=$(h)/test-dot.cc
Initial DOT work. * doc/vizualization/layout/scripts/ (inkscape_export_svg_to_plain_svg.sh): Move... (inkscape_export_svg_to_png_and_pdf.sh): Move... * scripts: ..here. New toplevel directory. * scripts/scripts/dot_to_png.sh: New. * scripts/scripts/dot_to_svg.sh: New. * src/Makefile.am: Add abg-viz-dot.cc, abg-viz-dot.h. * tests/Makefile.am: Add test-dot.cc. * src/abg-viz-dot.cc: New. * src/abg-viz-dot.h: New. * tests/test-dot.cc: New. * doc/vizualization/graph: New. * doc/vizualization/graph/gv/sa-A.gv: New. * doc/vizualization/graph/gv/sa-B.gv: New. * doc/vizualization/graph/gv/sa-C1.gv: New. * doc/vizualization/graph/gv/sa-C2.gv: New. * doc/vizualization/graph/gv/sa-C3.gv: New. * doc/vizualization/graph/gv/sa-C4.gv: New. * doc/vizualization/graph/gv/sa-D1.gv: New. * doc/vizualization/graph/gv/sa-D2.gv: New. * doc/vizualization/graph/gv/sa-D2v.gv: New. * doc/vizualization/graph/gv/sa-D3.gv: New. * doc/vizualization/graph/gv/sa-D3v.gv: New. * doc/vizualization/graph/gv/sa-D4v.gv: New. * doc/vizualization/graph/gv/sa-D5v1.gv: New. * doc/vizualization/graph/gv/sa-D5v2.gv: New. * doc/vizualization/graph/gv/sa-DD1.gv: New. * doc/vizualization/graph/gv/sa-DD2.gv: New. * doc/vizualization/graph/gv/sa-DD3.gv: New. * doc/vizualization/graph/gv/sa-DD4.gv: New. * doc/vizualization/graph/gv/sa-DD5.gv: New. * doc/vizualization/graph/gv/sa-base.gv: New. * doc/vizualization/graph/png/sa-A.png: New. * doc/vizualization/graph/png/sa-B.png: New. * doc/vizualization/graph/png/sa-C1.png: New. * doc/vizualization/graph/png/sa-C2.png: New. * doc/vizualization/graph/png/sa-C3.png: New. * doc/vizualization/graph/png/sa-C4.png: New. * doc/vizualization/graph/png/sa-D1.png: New. * doc/vizualization/graph/png/sa-D2.png: New. * doc/vizualization/graph/png/sa-D2v.png: New. * doc/vizualization/graph/png/sa-D3.png: New. * doc/vizualization/graph/png/sa-D3v.png: New. * doc/vizualization/graph/png/sa-D4v.png: New. * doc/vizualization/graph/png/sa-D5v1.png: New. * doc/vizualization/graph/png/sa-D5v2.png: New. * doc/vizualization/graph/png/sa-DD1.png: New. * doc/vizualization/graph/png/sa-DD2.png: New. * doc/vizualization/graph/png/sa-DD3.png: New. * doc/vizualization/graph/png/sa-DD4.png: New. * doc/vizualization/graph/png/sa-DD5.png: New. * doc/vizualization/graph/png/sa-base.png: New. * doc/vizualization/graph/sources/sa-A.cc: New. * doc/vizualization/graph/sources/sa-B.cc: New. * doc/vizualization/graph/sources/sa-C.cc: New. * doc/vizualization/graph/sources/sa-D.cc: New. * doc/vizualization/graph/sources/sa-DD.cc: New. * doc/vizualization/graph/sources/sa-base.cc: New. * doc/vizualization/graph/svg/sa-A.svg: New. * doc/vizualization/graph/svg/sa-B.svg: New. * doc/vizualization/graph/svg/sa-C1.svg: New. * doc/vizualization/graph/svg/sa-C2.svg: New. * doc/vizualization/graph/svg/sa-C3.svg: New. * doc/vizualization/graph/svg/sa-C4.svg: New. * doc/vizualization/graph/svg/sa-D1.svg: New. * doc/vizualization/graph/svg/sa-D2.svg: New. * doc/vizualization/graph/svg/sa-D2v.svg: New. * doc/vizualization/graph/svg/sa-D3.svg: New. * doc/vizualization/graph/svg/sa-D3v.svg: New. * doc/vizualization/graph/svg/sa-D4v.svg: New. * doc/vizualization/graph/svg/sa-D5v1.svg: New. * doc/vizualization/graph/svg/sa-D5v2.svg: New. * doc/vizualization/graph/svg/sa-DD1.svg: New. * doc/vizualization/graph/svg/sa-DD2.svg: New. * doc/vizualization/graph/svg/sa-DD3.svg: New. * doc/vizualization/graph/svg/sa-DD4.svg: New. * doc/vizualization/graph/svg/sa-DD5.svg: New. * doc/vizualization/graph/svg/sa-base.svg: New.
2013-07-02 01:08:18 +00:00
runtestdot_LDADD=$(top_builddir)/src/libabigail.la
testirwalker_SOURCES=$(h)/test-ir-walker.cc
testirwalker_LDADD=$(top_builddir)/src/libabigail.la
testdiff2_SOURCES=$(h)/test-diff2.cc
testdiff2_LDADD=$(top_builddir)/src/libabigail.la
Initial version of an archive manipulation program: biar * tests/test-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Move these directories manipulation utilities from here to ... * tools/abg-tools-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Declare these new functions. * tests/test-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Likewise, move these to ... * tools/abg-tools-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Define these. * tools/Makefile.am: New file. Create a new libtoolsutils.la static library with stuff from tools/abg-tools-utils.cc in it. Also create a new 'biar' program with the stuff from the new tools/biar.cc in it. * tools/biar.cc: New file. Contains the code for the new "biar" archive manipulation command line utility. * tests/test-read-write.cc (main): Adjust for the change about ensure_parent_dir_created above. * tests/test-write-read-archive.cc (main): Likewise. * Makefile.am (SUBDIRS): Add the new tools/ sub-directory to the build system. * configure.ac (AC_CONFIG_FILES): Generate tools/Makefile. * tests/Makefile.am: Make libtestutils.la link with the new libtoolsutils.la. Make sure to express the dependencies between libtestutils.la and the binaries that depend on it. Otherwise parallel builds can go awry. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-29 15:08:47 +00:00
AM_CPPFLAGS=-I${abs_top_srcdir}/include \
-I${abs_top_builddir}/include -I${abs_top_srcdir}/tools
AM_CXXFLAGS="-std=gnu++11"
Initial version of an archive manipulation program: biar * tests/test-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Move these directories manipulation utilities from here to ... * tools/abg-tools-utils.h (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Declare these new functions. * tests/test-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): Likewise, move these to ... * tools/abg-tools-utils.cc (is_dir, ensure_dir_path_created) (ensure_parent_dir_created): ... here in this new file. (dir_name, base_name): Define these. * tools/Makefile.am: New file. Create a new libtoolsutils.la static library with stuff from tools/abg-tools-utils.cc in it. Also create a new 'biar' program with the stuff from the new tools/biar.cc in it. * tools/biar.cc: New file. Contains the code for the new "biar" archive manipulation command line utility. * tests/test-read-write.cc (main): Adjust for the change about ensure_parent_dir_created above. * tests/test-write-read-archive.cc (main): Likewise. * Makefile.am (SUBDIRS): Add the new tools/ sub-directory to the build system. * configure.ac (AC_CONFIG_FILES): Generate tools/Makefile. * tests/Makefile.am: Make libtestutils.la link with the new libtoolsutils.la. Make sure to express the dependencies between libtestutils.la and the binaries that depend on it. Otherwise parallel builds can go awry. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-29 15:08:47 +00:00
EXTRA_DIST= \
data/test-read-write/test0.xml \
data/test-read-write/test1.xml \
data/test-read-write/test2.xml \
data/test-read-write/test3.xml \
data/test-read-write/test4.xml \
data/test-read-write/test5.xml \
data/test-read-write/test6.xml \
data/test-read-write/test7.xml \
data/test-read-write/test8.xml \
data/test-read-write/test9.xml \
data/test-read-write/test10.xml \
data/test-read-write/test11.xml \
data/test-read-write/test12.xml \
data/test-read-write/test13.xml \
data/test-read-write/test14.xml \
data/test-read-write/test15.xml \
Initial writing/reading of an ABI corpus to an archive * configure.ac: Support detection of libzip dependency. Define new DEPS_CFLAGS and DEPS_LIBS variables for use in Makefile.am to refer to the dependency headers and libraries. * doc/website/mainpage.txt: Update this to talk about the new libzip dependency. * include/Makefile.am: Add abg-libzip-utils.h to the build system. * include/abg-corpus.h (corps): Hide abigail::corpus's private behind a pimpl idiom. (corpus::{drop_translation_units, get_file_path, set_file_path, write, read}): New methods. * include/abg-libxml-utils.h (new_reader_from_buffer): Declare new function. * include/abg-libzip-utils.h: New file. * src/Makefile.am: Add abg-corpus.cc and abg-libzip-utils.cc to the build system. Refer to the library and headers dependencies via the new DEPS_LIBS and DEPS_CFLAGS variables. * src/abg-corpus.cc: New file. * src/abg-ir.cc (translation::set_path): New method. * src/abg-libxml-utils.cc (new_reader_from_buffer): Define new function. * src/abg-libzip-utils.cc: New file. * src/abg-reader.cc (translation_unit::read): New overload. * src/abg-writer.cc: Inject the names from the std namespace into the abigail namespace, rather than into abigail::writer. (abigail::translation_unit::write): New overload. This can now use ofstream and the other stuff from std that are injected in the abigail:: namespace. * tests/Makefile.am: Add tests/test-write-read-archive.cc to the build system; use that to build runtestwritereadarchive. Also add the input test data from tests/data/test-write-read-archive/test[0-4].xml. * /tests/data/test-write-read-archive/test[0-4].xml: New test input data files. * tests/test-write-read-archive.cc: New test for this archive write/read support. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-27 13:18:59 +00:00
data/test-read-write/test16.xml \
data/test-read-write/test17.xml \
data/test-read-write/test18.xml \
data/test-read-write/test19.xml \
data/test-read-write/test20.xml \
data/test-read-write/test21.xml \
Initial writing/reading of an ABI corpus to an archive * configure.ac: Support detection of libzip dependency. Define new DEPS_CFLAGS and DEPS_LIBS variables for use in Makefile.am to refer to the dependency headers and libraries. * doc/website/mainpage.txt: Update this to talk about the new libzip dependency. * include/Makefile.am: Add abg-libzip-utils.h to the build system. * include/abg-corpus.h (corps): Hide abigail::corpus's private behind a pimpl idiom. (corpus::{drop_translation_units, get_file_path, set_file_path, write, read}): New methods. * include/abg-libxml-utils.h (new_reader_from_buffer): Declare new function. * include/abg-libzip-utils.h: New file. * src/Makefile.am: Add abg-corpus.cc and abg-libzip-utils.cc to the build system. Refer to the library and headers dependencies via the new DEPS_LIBS and DEPS_CFLAGS variables. * src/abg-corpus.cc: New file. * src/abg-ir.cc (translation::set_path): New method. * src/abg-libxml-utils.cc (new_reader_from_buffer): Define new function. * src/abg-libzip-utils.cc: New file. * src/abg-reader.cc (translation_unit::read): New overload. * src/abg-writer.cc: Inject the names from the std namespace into the abigail namespace, rather than into abigail::writer. (abigail::translation_unit::write): New overload. This can now use ofstream and the other stuff from std that are injected in the abigail:: namespace. * tests/Makefile.am: Add tests/test-write-read-archive.cc to the build system; use that to build runtestwritereadarchive. Also add the input test data from tests/data/test-write-read-archive/test[0-4].xml. * /tests/data/test-write-read-archive/test[0-4].xml: New test input data files. * tests/test-write-read-archive.cc: New test for this archive write/read support. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2013-08-27 13:18:59 +00:00
\
data/test-write-read-archive/test0.xml \
data/test-write-read-archive/test1.xml \
data/test-write-read-archive/test2.xml \
data/test-write-read-archive/test3.xml \
data/test-write-read-archive/test4.xml \
\
data/test-bidiff/test-enum0-v0.cc.bi \
data/test-bidiff/test-enum0-v1.cc.bi \
data/test-bidiff/test-enum0-report.txt \
data/test-bidiff/test-enum1-v0.cc.bi \
data/test-bidiff/test-enum1-v1.cc.bi \
data/test-bidiff/test-enum1-report.txt \
data/test-bidiff/test-qual-type0-v0.cc.bi \
data/test-bidiff/test-qual-type0-v1.cc.bi \
data/test-bidiff/test-qual-type0-report.txt \
data/test-bidiff/test-struct0-v0.cc.bi \
data/test-bidiff/test-struct0-v1.cc.bi \
data/test-bidiff/test-struct0-report.txt \
data/test-bidiff/test-struct1-v0.cc.bi \
data/test-bidiff/test-struct1-v1.cc.bi \
data/test-bidiff/test-struct1-report.txt \
data/test-bidiff/test-var0-v0.cc.bi \
data/test-bidiff/test-var0-v1.cc.bi \
data/test-bidiff/test-var0-report.txt \
\
data/test-diff-dwarf/test0-v0.cc \
data/test-diff-dwarf/test0-v0.o \
data/test-diff-dwarf/test0-v1.cc \
data/test-diff-dwarf/test0-v1.o \
data/test-diff-dwarf/test0-report.txt \
data/test-diff-dwarf/test1-v0.cc \
data/test-diff-dwarf/test1-v0.o \
data/test-diff-dwarf/test1-v1.cc \
data/test-diff-dwarf/test1-v1.o \
data/test-diff-dwarf/test1-report.txt \
2014-04-01 10:38:51 +00:00
data/test-diff-dwarf/test2-v0.cc \
data/test-diff-dwarf/test2-v0.o \
data/test-diff-dwarf/test2-v1.cc \
data/test-diff-dwarf/test2-v1.o \
data/test-diff-dwarf/test2-report.txt \
Categorize through compatible distinct type diffs * src/abg-comparison.cc (report_size_and_alignment_changes): Split this static function out of ... (report_name_size_and_alignment_changes): ... this one. (distinct_diff::report): If the typedef-stripped variants of the diff subjects are of the same kind, display their diff. Otherwise, tell explicitly is the distinct type diff involves a type size change. (distinct_diff::traverse): If the typedef-stripped variants of the diff subjects are of the same kind, traverse that underlying diff sub-tree and propagate the categorizing possibly resulting from that traversal. * tests/data/test-diff-dwarf/test4-v0.o: New test input binary. * tests/data/test-diff-dwarf/test4-v0.cc: Source code for the input binary above. * tests/data/test-diff-dwarf/test4-v1.o: New test input binary. * tests/data/test-diff-dwarf/test4-v1.cc: Source code for the input binary above. * tests/data/test-diff-dwarf/test4-report.txt: Reference report for the difference between the two binaries above. * tests/data/test-diff-filter/test5-v0.o: New test input binary. * tests/data/test-diff-filter/test5-v0.cc: Source code for the input binary above. * tests/data/test-diff-filter/test5-v1.o: New test input binary. * tests/data/test-diff-filter/test5-v1.cc: Source code for the input binary above. * tests/data/test-diff-filter/test5-report.txt: Reference report for the difference between the two binaries above. * tests/test-diff-filter.cc: Adjust to produce a filtered diff for the two input binaries above. * tests/Makefile.am: Adjust to add missing test files to the distribution. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-04-05 09:59:16 +00:00
data/test-diff-dwarf/test3-v0.cc \
data/test-diff-dwarf/test3-v0.o \
data/test-diff-dwarf/test3-v1.cc \
data/test-diff-dwarf/test3-v1.o \
data/test-diff-dwarf/test3-report.txt \
data/test-diff-dwarf/test4-v0.cc \
data/test-diff-dwarf/test4-v0.o \
data/test-diff-dwarf/test4-v1.cc \
data/test-diff-dwarf/test4-v1.o \
data/test-diff-dwarf/test4-report.txt \
data/test-diff-dwarf/test5-v0.cc \
data/test-diff-dwarf/test5-v0.o \
data/test-diff-dwarf/test5-v1.cc \
data/test-diff-dwarf/test5-v1.o \
data/test-diff-dwarf/test5-report.txt \
data/test-diff-dwarf/test6-v0.cc \
data/test-diff-dwarf/test6-v0.o \
data/test-diff-dwarf/test6-v1.cc \
data/test-diff-dwarf/test6-v1.o \
data/test-diff-dwarf/test6-report.txt \
data/test-diff-dwarf/test7-v0.cc \
data/test-diff-dwarf/test7-v0.o \
data/test-diff-dwarf/test7-v1.cc \
data/test-diff-dwarf/test7-v1.o \
data/test-diff-dwarf/test7-report.txt \
\
data/test-read-dwarf/test0 \
data/test-read-dwarf/test0.abi \
data/test-read-dwarf/test0.cc \
data/test-read-dwarf/test1 \
data/test-read-dwarf/test1.abi \
Take filtering in account in diff stats & better categorizing * include/abg-comparison.h (diff_category::ACCESS_CHANGE_CATEGORY): Renamed ACCESS_CHANGED_CATEGORY into this. (diff_category::SIZE_OR_OFFSET_CHANGE_CATEGORY): Renamed SIZE_CHANGED_CATEGORY into this. Changed its semantics to incorporate offset changes as well. * src/abg-comparison.cc (struct noop_deleter): Move this up. (represent): Do not report filtered out data members. (report_mem_header): Add a new num_filtered parameter to take filtered-out members in account in members report headers. Adjust. (class_diff::priv::{count_filtered_bases, count_filtered_data_members, count_filtered_member_functions}): New member functions. When a member is filtered, do not report it all. ({enum_diff, class_diff}::report): Adjust. Take filtered members into account in headers. (corpus_diff::priv::apply_filters_and_compute_diff_stats): New member function. (corpus_diff::priv::emit_diff_stats): Renamed emit_corpus_diff_stats into this. Change it to take the stats in parameter. (corpus_diff::report): Adjust to re-use the above. Filter varibles as well. Take the filtered functions & variables in account in the stats. Do not report filtered-out functions & variables at all. * src/abg-comp-filter.cc (type_size_changed, access_changed) (data_member_offset_changed): New predicates. ({harmless, harmful}_filter::visit): Adjust to use the new predicates above. Update the harmful variant for the new SIZE_OR_OFFSET_CHANGE_CATEGORY category. * tools/bidiff.cc (set_diff_context_from_opts): Adjust for the categories name changes. * tests/data/test-diff-filter/test0-report.txt: New test input. * tests/data/test-diff-filter/test0-v0.cc: Likewise. * tests/data/test-diff-filter/test0-v0.o: Likewise. * tests/data/test-diff-filter/test0-v1.cc: Likewise. * tests/data/test-diff-filter/test0-v1.o: Likewise. * tests/test-diff-filter.cc: New test harness. * tests/Makefile.am: Add the new test files above to the distribution. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-03-29 05:44:13 +00:00
data/test-read-dwarf/test1.cc \
\
data/test-diff-filter/test0-v0.cc \
data/test-diff-filter/test0-v1.cc \
data/test-diff-filter/test0-v0.o \
data/test-diff-filter/test0-v1.o \
data/test-diff-filter/test0-report.txt \
data/test-diff-filter/test1-v0.cc \
data/test-diff-filter/test1-v1.cc \
data/test-diff-filter/test1-v0.o \
data/test-diff-filter/test1-v1.o \
data/test-diff-filter/test1-report.txt \
data/test-diff-filter/test2-v0.cc \
data/test-diff-filter/test2-v1.cc \
data/test-diff-filter/test2-v0.o \
data/test-diff-filter/test2-v1.o \
Categorize through compatible distinct type diffs * src/abg-comparison.cc (report_size_and_alignment_changes): Split this static function out of ... (report_name_size_and_alignment_changes): ... this one. (distinct_diff::report): If the typedef-stripped variants of the diff subjects are of the same kind, display their diff. Otherwise, tell explicitly is the distinct type diff involves a type size change. (distinct_diff::traverse): If the typedef-stripped variants of the diff subjects are of the same kind, traverse that underlying diff sub-tree and propagate the categorizing possibly resulting from that traversal. * tests/data/test-diff-dwarf/test4-v0.o: New test input binary. * tests/data/test-diff-dwarf/test4-v0.cc: Source code for the input binary above. * tests/data/test-diff-dwarf/test4-v1.o: New test input binary. * tests/data/test-diff-dwarf/test4-v1.cc: Source code for the input binary above. * tests/data/test-diff-dwarf/test4-report.txt: Reference report for the difference between the two binaries above. * tests/data/test-diff-filter/test5-v0.o: New test input binary. * tests/data/test-diff-filter/test5-v0.cc: Source code for the input binary above. * tests/data/test-diff-filter/test5-v1.o: New test input binary. * tests/data/test-diff-filter/test5-v1.cc: Source code for the input binary above. * tests/data/test-diff-filter/test5-report.txt: Reference report for the difference between the two binaries above. * tests/test-diff-filter.cc: Adjust to produce a filtered diff for the two input binaries above. * tests/Makefile.am: Adjust to add missing test files to the distribution. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-04-05 09:59:16 +00:00
data/test-diff-filter/test2-report.txt \
data/test-diff-filter/test3-v0.cc \
data/test-diff-filter/test3-v1.cc \
data/test-diff-filter/test3-v0.o \
data/test-diff-filter/test3-v1.o \
data/test-diff-filter/test3-report.txt \
data/test-diff-filter/test4-v0.cc \
data/test-diff-filter/test4-v1.cc \
data/test-diff-filter/test4-v0.o \
data/test-diff-filter/test4-v1.o \
data/test-diff-filter/test4-report.txt \
data/test-diff-filter/test5-v0.cc \
data/test-diff-filter/test5-v1.cc \
data/test-diff-filter/test5-v0.o \
data/test-diff-filter/test5-v1.o \
data/test-diff-filter/test5-report.txt \
data/test-diff-filter/test6-v0.cc \
data/test-diff-filter/test6-v1.cc \
data/test-diff-filter/test6-v0.o \
data/test-diff-filter/test6-v1.o \
data/test-diff-filter/test6-report.txt \
data/test-diff-filter/test7-v0.cc \
data/test-diff-filter/test7-v1.cc \
data/test-diff-filter/test7-v0.o \
data/test-diff-filter/test7-v1.o \
data/test-diff-filter/test7-report.txt \
data/test-diff-filter/test8-v0.cc \
data/test-diff-filter/test8-v1.cc \
data/test-diff-filter/test8-v0.o \
data/test-diff-filter/test8-v1.o \
data/test-diff-filter/test8-report.txt \
data/test-diff-filter/test9-v0.cc \
data/test-diff-filter/test9-v1.cc \
data/test-diff-filter/test9-v0.o \
data/test-diff-filter/test9-v1.o \
data/test-diff-filter/test9-report.txt \
data/test-diff-filter/test10-v0.cc \
data/test-diff-filter/test10-v1.cc \
data/test-diff-filter/test10-v0.o \
data/test-diff-filter/test10-v1.o \
data/test-diff-filter/test10-report.txt \
data/test-diff-filter/test11-v0.cc \
data/test-diff-filter/test11-v1.cc \
data/test-diff-filter/test11-v0.o \
data/test-diff-filter/test11-v1.o \
data/test-diff-filter/test11-report.txt \
data/test-diff-filter/test12-v0.cc \
data/test-diff-filter/test12-v1.cc \
data/test-diff-filter/test12-v0.o \
data/test-diff-filter/test12-v1.o \
data/test-diff-filter/test12-report.txt
clean-local: clean-local-check
.PHONY: clean-local-check
clean-local-check:
-rm -rf ${builddir}/output *.svg *.gv