cfc85cb0be6e54f9738cb5a843bf82f65f4b2d78
[whenjobs.git] / tests / parsing / Makefile.am
1 # whenjobs
2 # Copyright (C) 2012 Red Hat Inc.
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
18 EXTRA_DIST = $(SOURCES) test_load.ml
19
20 SOURCES = t010_load.ml t020_simple.ml t030_jobnames.ml t040_ocaml_jobnames.ml
21
22 tests = $(SOURCES:.ml=.cmo)
23
24 check_SCRIPTS = test_load $(tests)
25
26 TESTS_ENVIRONMENT = ./test_load
27 TESTS = $(tests)
28
29 OCAMLPACKAGES = -package unix,num,camlp4.lib,calendar,rpc -I ../../lib
30
31 OCAMLCFLAGS = -g -warn-error CDEFLMPSUVYZX $(OCAMLPACKAGES)
32 OCAMLOPTFLAGS = $(OCAMLCFLAGS)
33
34 PP = -pp '$(CAMLP4O) ../../lib/pa_when.cmo'
35
36 test_load: test_load.cmo ../../lib/whenlib.cma
37         $(OCAMLFIND) ocamlc $(OCAMLCFLAGS) -linkpkg whenlib.cma $< -o $@
38
39 # Rules for all OCaml files.
40 %.cmi: %.mli
41         $(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(PP) -c $< -o $@
42 %.cmo: %.ml
43         $(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(PP) -c $< -o $@
44 #%.cmx: %.ml
45 #       $(OCAMLFIND) ocamlopt $(OCAMLOPTFLAGS) $(PP) -c $< -o $@
46
47 SUFFIXES = .cmo .cmi .cmx .ml .mli .mll .mly
48
49 # OCaml dependencies.
50 depend: .depend
51
52 .depend: $(SOURCES)
53         rm -f $@ $@-t
54         $(OCAMLFIND) ocamldep $(PP) $^ | \
55           $(SED) -e 's/ *$$//' | \
56           $(SED) -e :a -e '/ *\\$$/N; s/ *\\\n */ /; ta' | \
57           LANG=C sort > $@-t
58         mv $@-t $@
59
60 -include .depend
61
62 # Useful for debugging: print the generated AST for the tests.
63 print:
64         @for f in $(check_SCRIPTS); do \
65           b=`basename $$f .cmo`; \
66           echo "Test: $$b.ml"; \
67           camlp4o ../../lib/pa_when.cmo -printer pr_o.cmo $$b.ml; \
68         done
69
70 CLEANFILES = *.cmi *.cmo *.cmx *.cma *.cmxa *~ test_load