From: Michael Tremer Date: Tue, 27 Apr 2021 18:41:12 +0000 (+0000) Subject: tests: Create internal library for unit tests X-Git-Tag: 0.9.28~1285^2~205 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ad970155c181944e6af41e1345af1f8fae5ad5ec;p=pakfire.git tests: Create internal library for unit tests Our shared library only exports very few symbols so that we can change our internal ABI easily and presumably not many applications are going to link against libpakfire anyways. This makes it impossible to test any internal functions which are inaccessible. This patch adds an internal library with all available symbols which will be linked into the test binaries so that we can test those functions without any acrobatics. Signed-off-by: Michael Tremer --- diff --git a/Makefile.am b/Makefile.am index c61e51859..136691a22 100644 --- a/Makefile.am +++ b/Makefile.am @@ -358,6 +358,28 @@ libpakfire_la_DEPENDENCIES = \ EXTRA_DIST += \ src/libpakfire/libpakfire.sym +noinst_LTLIBRARIES += \ + libpakfire-internal.la + +libpakfire_internal_la_SOURCES = \ + $(libpakfire_la_SOURCES) + +libpakfire_internal_la_CPPFLAGS = \ + $(libpakfire_la_CPPFLAGS) + +libpakfire_internal_la_CFLAGS = \ + $(libpakfire_la_CFLAGS) + +libpakfire_internal_la_LDFLAGS = \ + $(AM_LDFLAGS) \ + -Wl,--version-script=$(top_srcdir)/src/libpakfire/libpakfire.sym + +libpakfire_internal_la_LIBADD = \ + $(libpakfire_la_LIBADD) + +libpakfire_internal_la_DEPENDENCIES = \ + $(libpakfire_la_DEPENDENCIES) + check_PROGRAMS += \ tests/libpakfire/main \ tests/libpakfire/arch \ @@ -384,8 +406,7 @@ tests_libpakfire_main_CPPFLAGS = \ -DTEST_ROOTFS=\"$(TEST_ROOTFS)\" tests_libpakfire_main_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) tests_libpakfire_arch_SOURCES = \ tests/libpakfire/arch.c @@ -394,8 +415,7 @@ tests_libpakfire_arch_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_arch_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) tests_libpakfire_archive_SOURCES = \ tests/libpakfire/archive.c @@ -404,51 +424,34 @@ tests_libpakfire_archive_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_archive_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_cgroup_SOURCES = \ - tests/libpakfire/cgroup.c \ - src/libpakfire/cgroup.c \ - src/libpakfire/util.c + tests/libpakfire/cgroup.c tests_libpakfire_cgroup_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - $(JSON_C_CFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_cgroup_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) \ - $(ARCHIVE_LIBS) \ - $(JSON_C_LIBS) \ - $(UUID_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_compress_SOURCES = \ - tests/libpakfire/compress.c \ - src/libpakfire/compress.c + tests/libpakfire/compress.c tests_libpakfire_compress_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_compress_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) \ - $(LZMA_LIBS) \ - $(ZSTD_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_config_SOURCES = \ - tests/libpakfire/config.c \ - src/libpakfire/config.c + tests/libpakfire/config.c tests_libpakfire_config_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_config_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) tests_libpakfire_db_SOURCES = \ tests/libpakfire/db.c @@ -457,27 +460,16 @@ tests_libpakfire_db_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_db_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_downloader_SOURCES = \ - tests/libpakfire/downloader.c \ - src/libpakfire/downloader.c \ - src/libpakfire/progressbar.c \ - src/libpakfire/util.c + tests/libpakfire/downloader.c tests_libpakfire_downloader_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - $(JSON_C_CFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_downloader_LDADD = \ - $(TESTSUITE_LDADD) \ - $(ARCHIVE_LIBS) \ - $(CURL_LIBS) \ - $(JSON_C_LIBS) \ - $(PAKFIRE_LIBS) \ - $(UUID_LIBS) + $(TESTSUITE_LDADD) tests_libpakfire_execute_SOURCES = \ tests/libpakfire/execute.c @@ -486,8 +478,7 @@ tests_libpakfire_execute_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_execute_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) tests_libpakfire_key_SOURCES = \ tests/libpakfire/key.c \ @@ -497,19 +488,16 @@ tests_libpakfire_key_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_key_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_makefile_SOURCES = \ tests/libpakfire/makefile.c tests_libpakfire_makefile_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_makefile_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_packager_SOURCES = \ tests/libpakfire/packager.c @@ -518,8 +506,7 @@ tests_libpakfire_packager_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_packager_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_parser_SOURCES = \ tests/libpakfire/parser.c @@ -528,25 +515,16 @@ tests_libpakfire_parser_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_parser_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_progressbar_SOURCES = \ - tests/libpakfire/progressbar.c \ - src/libpakfire/progressbar.c \ - src/libpakfire/util.c + tests/libpakfire/progressbar.c tests_libpakfire_progressbar_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - $(JSON_C_CFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_progressbar_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) \ - $(ARCHIVE_LIBS) \ - $(JSON_C_LIBS) \ - $(UUID_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_repo_SOURCES = \ tests/libpakfire/repo.c @@ -555,24 +533,16 @@ tests_libpakfire_repo_CPPFLAGS = \ $(TESTSUITE_CPPFLAGS) tests_libpakfire_repo_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) + $(TESTSUITE_LDADD) dist_tests_libpakfire_util_SOURCES = \ - tests/libpakfire/util.c \ - src/libpakfire/util.c + tests/libpakfire/util.c tests_libpakfire_util_CPPFLAGS = \ - $(TESTSUITE_CPPFLAGS) \ - $(JSON_C_CFLAGS) \ - -DPAKFIRE_PRIVATE + $(TESTSUITE_CPPFLAGS) tests_libpakfire_util_LDADD = \ - $(TESTSUITE_LDADD) \ - $(PAKFIRE_LIBS) \ - $(ARCHIVE_LIBS) \ - $(JSON_C_LIBS) \ - $(UUID_LIBS) + $(TESTSUITE_LDADD) # ------------------------------------------------------------------------------ @@ -725,7 +695,9 @@ TESTSUITE_CPPFLAGS = \ -DTEST_ROOTFS=\"$(TEST_ROOTFS)\" TESTSUITE_LDADD = \ - tests/libtestsuite.la + tests/libtestsuite.la \ + libpakfire.la \ + libpakfire-internal.la TESTS_ENVIRONMENT = \ TEST_DATA_DIR="$(abs_top_srcdir)/tests/data" \