summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Vlad <marius.c.vlad@intel.com>2016-08-31 19:59:02 +0300
committerMarius Vlad <marius.c.vlad@intel.com>2016-09-01 09:59:55 +0300
commit75e7a3a8d255a4b925e24939e771af3e7cdf15dc (patch)
tree30b5962f581eb8493ff746776c99469408646394
parent7213c3e09621d9708a87d26cda4b1b71fe73d206 (diff)
autotools/: Allow check target to be invoked w/o the need to issue a build.
We need to have the test list generated before running the check target. Migrated igt_command_line.sh to tests/ from lib/tests/, which allows to building the tests and execute the script. This would allow cleaning followed by a make check. Also assembler/ directory needs also to be adjusted in order for this to work. Kept the possibility to invoke tests/igt_command_line.sh to determine which test is failing. Signed-off-by: Marius Vlad <marius.c.vlad@intel.com> Url: https://patchwork.freedesktop.org/series/6539/ Reviewed-By: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--assembler/Makefile.am108
-rw-r--r--assembler/test/Makefile.am93
-rw-r--r--assembler/test/run-test.sh2
-rw-r--r--lib/tests/Makefile.am2
-rw-r--r--lib/tests/Makefile.sources4
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/Makefile.sources6
-rwxr-xr-xtests/igt_command_line.sh (renamed from lib/tests/igt_command_line.sh)24
8 files changed, 129 insertions, 112 deletions
diff --git a/assembler/Makefile.am b/assembler/Makefile.am
index fb309ac9..bed6c07c 100644
--- a/assembler/Makefile.am
+++ b/assembler/Makefile.am
@@ -47,8 +47,112 @@ intel_gen4disasm_LDADD = libbrw.la
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = intel-gen4asm.pc
-CLEANFILES = $(BUILT_SOURCES)
+check_SCRIPTS = test/run-test.sh
+
+TESTS = \
+ test/mov \
+ test/frc \
+ test/rndd \
+ test/rndu \
+ test/rnde \
+ test/rnde-intsrc \
+ test/rndz \
+ test/lzd \
+ test/not \
+ test/immediate \
+ $(NULL)
+
+# Tests that are expected to fail because they contain some inccorect code.
+XFAIL_TESTS =
+
+# Those tests were already failing when the assembler was imported from
+# the intel-gen4asm git repository:
+# http://cgit.freedesktop.org/xorg/app/intel-gen4asm/
+# We disable them "for now" as a workaround to be able to release i-g-t
+disabled_tests = \
+ test/declare \
+ test/jmpi \
+ test/if \
+ test/iff \
+ test/while \
+ test/else \
+ test/break \
+ test/cont \
+ test/halt \
+ test/wait \
+ test/endif \
+ $(NULL)
+
+disabled_xfail_tests = \
+ test/rnde-intsrc \
+ $(NULL)
+
+TESTDATA = \
+ test/mov.expected \
+ test/mov.g4a \
+ test/frc.expected \
+ test/frc.g4a \
+ test/rndd.expected \
+ test/rndd.g4a \
+ test/rndu.expected \
+ test/rndu.g4a \
+ test/rnde.expected \
+ test/rnde.g4a \
+ test/rnde-intsrc.expected \
+ test/rnde-intsrc.g4a \
+ test/rndz.expected \
+ test/rndz.g4a \
+ test/lzd.expected \
+ test/lzd.g4a \
+ test/not.expected \
+ test/not.g4a \
+ test/jmpi.expected \
+ test/jmpi.g4a \
+ test/if.expected \
+ test/if.g4a \
+ test/iff.expected \
+ test/iff.g4a \
+ test/while.expected \
+ test/while.g4a \
+ test/else.expected \
+ test/else.g4a \
+ test/break.expected \
+ test/break.g4a \
+ test/cont.expected \
+ test/cont.g4a \
+ test/halt.expected \
+ test/halt.g4a \
+ test/wait.expected \
+ test/wait.g4a \
+ test/endif.expected \
+ test/endif.g4a \
+ test/declare.expected \
+ test/declare.g4a \
+ test/immediate.g4a \
+ test/immediate.expected \
+ $(NULL)
+
+test_EXTRA_DIST = \
+ ${TESTDATA} \
+ test/run-test.sh \
+ $(NULL)
+
+$(TESTS): test/run-test.sh
+ sed "s|TEST|$@|g" ${srcdir}/test/run-test.sh > $@
+ chmod +x $@
+
+test_CLEANFILES = \
+ test/*.out \
+ ${TESTS} \
+ $(NULL)
+
+CLEANFILES = $(BUILT_SOURCES) \
+ $(test_CLEANFILES) \
+ $(NULL)
+
EXTRA_DIST = \
README \
TODO \
- intel-gen4asm.pc.in
+ intel-gen4asm.pc.in \
+ $(test_EXTRA_DIST) \
+ $(NULL)
diff --git a/assembler/test/Makefile.am b/assembler/test/Makefile.am
index f1131198..e69de29b 100644
--- a/assembler/test/Makefile.am
+++ b/assembler/test/Makefile.am
@@ -1,93 +0,0 @@
-check_SCRIPTS = run-test.sh
-
-TESTS_ENVIRONMENT = top_builddir=${top_builddir}
-TESTS = \
- mov \
- frc \
- rndd \
- rndu \
- rnde \
- rnde-intsrc \
- rndz \
- lzd \
- not \
- immediate
-
-# Tests that are expected to fail because they contain some inccorect code.
-XFAIL_TESTS =
-
-# Those tests were already failing when the assembler was imported from
-# the intel-gen4asm git repository:
-# http://cgit.freedesktop.org/xorg/app/intel-gen4asm/
-# We disable them "for now" as a workaround to be able to release i-g-t
-disabled_tests = \
- declare \
- jmpi \
- if \
- iff \
- while \
- else \
- break \
- cont \
- halt \
- wait \
- endif
-
-disabled_xfail_tests = \
- rnde-intsrc
-
-TESTDATA = \
- mov.expected \
- mov.g4a \
- frc.expected \
- frc.g4a \
- rndd.expected \
- rndd.g4a \
- rndu.expected \
- rndu.g4a \
- rnde.expected \
- rnde.g4a \
- rnde-intsrc.expected \
- rnde-intsrc.g4a \
- rndz.expected \
- rndz.g4a \
- lzd.expected \
- lzd.g4a \
- not.expected \
- not.g4a \
- jmpi.expected \
- jmpi.g4a \
- if.expected \
- if.g4a \
- iff.expected \
- iff.g4a \
- while.expected \
- while.g4a \
- else.expected \
- else.g4a \
- break.expected \
- break.g4a \
- cont.expected \
- cont.g4a \
- halt.expected \
- halt.g4a \
- wait.expected \
- wait.g4a \
- endif.expected \
- endif.g4a \
- declare.expected \
- declare.g4a \
- immediate.g4a \
- immediate.expected
-
-EXTRA_DIST = \
- ${TESTDATA} \
- run-test.sh
-
-$(TESTS): run-test.sh
- sed "s|TEST|$@|g" ${srcdir}/run-test.sh > $@
- chmod +x $@
-
-CLEANFILES = \
- *.out \
- ${TESTS}
diff --git a/assembler/test/run-test.sh b/assembler/test/run-test.sh
index 27c5c2d3..20a408c6 100644
--- a/assembler/test/run-test.sh
+++ b/assembler/test/run-test.sh
@@ -3,7 +3,7 @@
SRCDIR=${srcdir-`pwd`}
BUILDDIR=${top_builddir-`pwd`}
-${BUILDDIR}/assembler/intel-gen4asm -o TEST.out $SRCDIR/TEST.g4a
+${BUILDDIR}/intel-gen4asm -o TEST.out $SRCDIR/TEST.g4a
if cmp TEST.out ${SRCDIR}/TEST.expected 2> /dev/null; then : ; else
echo "Output comparison for TEST"
diff -u ${SRCDIR}/TEST.expected TEST.out
diff --git a/lib/tests/Makefile.am b/lib/tests/Makefile.am
index c2fa2ebd..5d14194a 100644
--- a/lib/tests/Makefile.am
+++ b/lib/tests/Makefile.am
@@ -7,8 +7,6 @@ AM_TESTS_ENVIRONMENT = \
top_builddir=$(top_builddir) \
top_srcdir=$(top_srcdir)
-EXTRA_DIST = $(check_SCRIPTS)
-
AM_CFLAGS = $(DRM_CFLAGS) $(CWARNFLAGS) $(DEBUG_CFLAGS) \
-I$(srcdir)/../.. \
-I$(srcdir)/.. \
diff --git a/lib/tests/Makefile.sources b/lib/tests/Makefile.sources
index 5d8c7851..3fcfe141 100644
--- a/lib/tests/Makefile.sources
+++ b/lib/tests/Makefile.sources
@@ -15,10 +15,6 @@ check_prog_list = \
igt_exit_handler \
$(NULL)
-check_script_list = \
- igt_command_line.sh \
- $(NULL)
-
TESTS = \
$(check_prog_list) \
$(check_script_list) \
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 0137597a..d0e758fe 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -50,7 +50,7 @@ all-local: .gitignore
pkgdata_DATA = test-list.txt test-list-full.txt
EXTRA_PROGRAMS = $(HANG)
-EXTRA_DIST = $(common_files)
+EXTRA_DIST = $(common_files) $(check_SCRIPTS)
CLEANFILES = $(EXTRA_PROGRAMS) test-list.txt test-list-full.txt .gitignore
diff --git a/tests/Makefile.sources b/tests/Makefile.sources
index 6cdfea3b..7d2b7289 100644
--- a/tests/Makefile.sources
+++ b/tests/Makefile.sources
@@ -304,6 +304,12 @@ testdisplay_SOURCES = \
TESTS_progs += testdisplay
+check_SCRIPTS = igt_command_line.sh \
+ $(NULL)
+
+TESTS = $(check_SCRIPTS) \
+ $(NULL)
+
common_files = \
eviction_common.c \
$(NULL)
diff --git a/lib/tests/igt_command_line.sh b/tests/igt_command_line.sh
index 35f580f0..a20e44cf 100755
--- a/lib/tests/igt_command_line.sh
+++ b/tests/igt_command_line.sh
@@ -26,13 +26,18 @@
#
if [ -z "$top_builddir" ]; then
- top_builddir="$(dirname $0)/../.."
+ top_builddir="$(dirname $0)"
fi
-TESTLIST=`cat $top_builddir/tests/test-list.txt`
+# allow to run this script from top directory
+TESTLIST=`cat $top_builddir/test-list.txt`
if [ $? -ne 0 ]; then
- echo "Error: Could not read test lists"
- exit 99
+ # distcheck requires this hack
+ TESTLIST=$(cat test-list.txt)
+ if [ $? -ne 0 ]; then
+ echo "Error: Could not read test lists"
+ exit 99
+ fi
fi
fail () {
@@ -45,11 +50,12 @@ for test in $TESTLIST; do
continue
fi
- if [ -x $top_builddir/tests/$test ]; then
- test=$top_builddir/tests/$test
- else
- # if the test is a script, it will be in $srcdir
- test=$top_srcdir/tests/$test
+ # top_builddir is empty for distcheck
+ test=$top_builddir/$test
+
+ # distcheck requires this hack
+ if [ ! -x "$test" ]; then
+ continue
fi
echo "$test:"