summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog10
-rw-r--r--Makefile17
2 files changed, 20 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index e3282a89..4a5e2754 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
2009-12-02 Kaz Kylheku <kkylheku@gmail.com>
+ * Makefile (tests): Don't depend on the executable. Otherwise,
+ during make install-tests, if it doesn't exist in the
+ install directory, a gcc compile command gets deposited
+ into the run.sh generated script.
+ (install-tests): Fixes to make this work when using
+ a separate build directory. Split the cpio -p job
+ into a cpio -i piping into cpio -o.
+
+2009-12-02 Kaz Kylheku <kkylheku@gmail.com>
+
* Makefile (install-tests): New target. Provides a way to make the
test cases part of the installation, and a generated script to run the
commands on the installation host.
diff --git a/Makefile b/Makefile
index b166b12d..383ceb65 100644
--- a/Makefile
+++ b/Makefile
@@ -78,7 +78,7 @@ TESTS := $(patsubst $(top_srcdir)/%.txr,./%.ok,\
$(shell find $(top_srcdir)/tests -name '*.txr' | sort))
.PHONY: tests
-tests: $(PROG) $(TESTS)
+tests: $(TESTS)
@echo "** tests passed!"
tests/001/%: TXR_ARGS := $(top_srcdir)/tests/001/data
@@ -122,12 +122,15 @@ install: $(PROG)
# Install the tests as well as the script to run them
#
install-tests:
- cd $(top_srcdir) ; find tests -name '*.out' -prune -o -print | cpio -pd $(DESTDIR)$(datadir)
- ( echo "#!/bin/sh" ; \
- echo "set -ex" ; \
- echo "cd $(datadir)" ; \
- make -s -n tests top_srcdir=. PROG=$(bindir)/txr ) \
- > run.sh
+ mkdir -p $(DESTDIR)$(datadir)
+ (cd $(top_srcdir) ; \
+ find tests -name '*.out' -prune -o -print | cpio -co) \
+ | (cd $(DESTDIR)$(datadir) ; cpio -idu)
+ (echo "#!/bin/sh" ; \
+ echo "set -ex" ; \
+ echo "cd $(datadir)" ; \
+ make -s -n tests top_srcdir=. PROG=$(bindir)/txr) \
+ > run.sh
$(call INSTALL,0755,run.sh,$(DESTDIR)$(datadir)/tests)
config.make config.h: