1##  Makefile.am -- an automake template for Makefile.in file
2##  Copyright (C) 2013 Stéphane Voltz and Sane Developers.
3##
4##  This file is part of the "Sane" build infra-structure.  See
5##  included LICENSE file for license information.
6
7all:
8	@echo "run 'make check' to run tests"
9
10SANEDESC  = ../../tools/sane-desc$(EXEEXT)
11TESTFILE  = $(srcdir)/data/testfile.desc
12OUTFILES  = *.res
13DEVICE    = test
14
15EXTRA_DIST = data/testfile.desc data/ascii.ref data/db.ref data/hal-new.ref \
16	     data/hal.ref data/html-backends-split.ref data/html-mfgs.ref \
17	     data/hwdb.ref data/plist.ref data/statistics.ref \
18	     data/udev+acl.ref data/udev+hwdb.ref data/udev.ref \
19	     data/usermap.ref data/xml.ref
20CLEANFILES = $(OUTFILES)
21
22all: help
23
24help:
25	@echo "Use 'make check' to run the tests."
26
27check: check.local
28
29check.local:
30	@echo "**** Testing $(SANEDESC) with $(TESTFILE)"
31	@pass=true; \
32	for mode in ascii html-backends-split html-mfgs xml statistics usermap db udev udev+acl udev+hwdb hwdb plist hal hal-new; \
33	do \
34	  $(SANEDESC) -m $$mode -s $(srcdir)/data >$$mode.res ;\
35          if diff -I "sane-backends 1\.[0-9]\.[0-9]\+\([-.0-9a-fgdirty]\+\)\?$$" \
36	       $(srcdir)/data/$$mode.ref $$mode.res ; \
37	  then \
38		echo "PASS: sane-desc -m $$mode -s $(srcdir)/data"; \
39	  else \
40		echo "FAIL: sane-desc -m $$mode -s $(srcdir)/data"; \
41		pass=false ; \
42	  fi; \
43	done ;\
44	if `$$pass`; then \
45	  echo "================" ; \
46	  echo "All tests passed" ; \
47	  echo "================" ; \
48	else \
49	  echo "========================" ; \
50	  echo "One or more tests failed" ; \
51	  echo "========================" ; \
52	  exit 1; \
53	fi
54