Fix: Make test_dwarf and test_bin_info tests work out-of-tree
[babeltrace.git] / tests / lib / Makefile.am
index 763b7bc0b9619c25acccc9d9efa39cc285206c56..10fd9e734c588c34b1388c1d7ed2ac447334e327 100644 (file)
@@ -6,31 +6,43 @@ LIBTAP=$(top_builddir)/tests/utils/tap/libtap.la
 
 libtestcommon_a_SOURCES = common.c common.h
 
+# -Wl,--no-as-needed is needed for recent gold linker who seems to think
+# it knows better and considers libraries with constructors having
+# side-effects as dead code.
+test_seek_LDFLAGS = $(LD_NO_AS_NEEDED)
 test_seek_LDADD = $(LIBTAP) libtestcommon.a \
        $(top_builddir)/lib/libbabeltrace.la \
        $(top_builddir)/formats/ctf/libbabeltrace-ctf.la
 
 test_bitfield_LDADD = $(LIBTAP) libtestcommon.a
 
-noinst_PROGRAMS = test_seek test_bitfield
+test_ctf_writer_LDADD = $(LIBTAP) \
+       $(top_builddir)/lib/libbabeltrace.la \
+       $(top_builddir)/formats/ctf/libbabeltrace-ctf.la
+
+noinst_PROGRAMS = test_seek test_bitfield test_ctf_writer
 
 test_seek_SOURCES = test_seek.c
 test_bitfield_SOURCES = test_bitfield.c
+test_ctf_writer_SOURCES = test_ctf_writer.c
 
-SCRIPT_LIST = test_seek_big_trace test_seek_empty_packet
+check_SCRIPTS = test_seek_big_trace \
+               test_seek_empty_packet \
+               test_ctf_writer_complete
 
-dist_noinst_SCRIPTS = $(SCRIPT_LIST)
+if ENABLE_DEBUGINFO
+test_dwarf_LDFLAGS = -static
+test_dwarf_LDADD = $(LIBTAP) \
+       $(top_builddir)/lib/libbabeltrace.la \
+       $(top_builddir)/lib/libdebuginfo.la
+test_dwarf_SOURCES = test_dwarf.c
 
-all-local:
-       @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
-               for script in $(SCRIPT_LIST); do \
-                       cp -f $(srcdir)/$$script $(builddir); \
-               done; \
-       fi
+test_bin_info_LDFLAGS = -static
+test_bin_info_LDADD = $(LIBTAP) \
+       $(top_builddir)/lib/libbabeltrace.la \
+       $(top_builddir)/lib/libdebuginfo.la
+test_bin_info_SOURCES = test_bin_info.c
 
-clean-local:
-       @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
-               for script in $(SCRIPT_LIST); do \
-                       rm -f $(builddir)/$$script; \
-               done; \
-       fi
+noinst_PROGRAMS += test_dwarf test_bin_info
+check_SCRIPTS += test_dwarf_complete test_bin_info_complete
+endif
This page took 0.023508 seconds and 4 git commands to generate.