Fix a !srcdir problem with installed tests
authorMatthias Clasen <mclasen@redhat.com>
Sat, 21 Dec 2013 18:20:44 +0000 (13:20 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 21 Dec 2013 18:22:00 +0000 (13:22 -0500)
When installing scripts which are not generated in a
srcdir != builddir build, $< will have ../.. goo in it.
So we need to strip the directory parts before using
the filename to construct a new path.

glib-tap.mk
glib.mk

index c97bf3f..8d3ce64 100644 (file)
@@ -127,7 +127,7 @@ installed_test_meta_DATA = $(installed_testcases:=.test)
 %.test: %$(EXEEXT) Makefile
        $(AM_V_GEN) (echo '[Test]' > $@.tmp; \
        echo 'Type=session' >> $@.tmp; \
-       echo 'Exec=$(installed_testdir)/$<' >> $@.tmp; \
+       echo 'Exec=$(installed_testdir)/(notdir $<)' >> $@.tmp; \
        mv $@.tmp $@)
 
 CLEANFILES += $(installed_test_meta_DATA)
diff --git a/glib.mk b/glib.mk
index e906351..cbae1f4 100644 (file)
--- a/glib.mk
+++ b/glib.mk
@@ -54,6 +54,7 @@ lcov:
 genlcov:
        $(AM_V_GEN) rm -f $(top_builddir)/tests/.libs/libmoduletestplugin_*.gcda; \
          $(LTP) --quiet --directory $(top_builddir) --capture --output-file glib-lcov.info --test-name GLIB_PERF --no-checksum --compat-libtool --ignore-errors source; \
+         $(LTP) --quiet --output-file glib-lcov.info --remove glib-lcov.info docs/reference/\* /tmp/\*  gio/tests/gdbus-object-manager-example/\* ; \
          LANG=C $(LTP_GENHTML) --quiet --prefix $(top_builddir) --output-directory glib-lcov --title "GLib Code Coverage" --legend --frames --show-details glib-lcov.info --ignore-errors source
        @echo "file://$(abs_top_builddir)/glib-lcov/index.html"
 
@@ -163,7 +164,7 @@ installed_test_meta_DATA = $(installed_testcases:=.test)
 %.test: %$(EXEEXT) Makefile
        $(AM_V_GEN) (echo '[Test]' > $@.tmp; \
        echo 'Type=session' >> $@.tmp; \
-       echo 'Exec=$(installed_testdir)/$<' >> $@.tmp; \
+       echo 'Exec=$(installed_testdir)/$(notdir $<)' >> $@.tmp; \
        mv $@.tmp $@)
 
 CLEANFILES += $(installed_test_meta_DATA)