2 # Copyright (C) 2019 Richard W.M. Jones
3 # Copyright (C) 2019 Red Hat Inc.
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License along
16 # with this program; if not, write to the Free Software Foundation, Inc.,
17 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 let objects = ["ast.cmx", "parser.cmx", "lexer.cmx", "main.cmx"]
21 goal all = : file("goals")
25 rm -f *.cmi *.cmo *.cmx *.o
26 rm -f parser.ml parser.mli lexer.ml parser.conflicts
30 file("goals"): objects {
31 @OCAMLFIND@ opt %^ -o %@
34 let OCAMLFLAGS = "-g -safe-string -warn-error CDEFLMPSUVYZX+52-3"
36 goal compile_cmi (name) = "%name.cmi": "%name.mli" {
37 @OCAMLFIND@ c %OCAMLFLAGS -c %< -o %@
39 goal compile_cmo (name) = "%name.cmo": "%name.ml" {
40 @OCAMLFIND@ c %OCAMLFLAGS -c %< -o %@
42 goal compile_cmx (name) = "%name.cmx": "%name.ml" {
43 @OCAMLFIND@ opt %OCAMLFLAGS -c %< -o %@
46 "parser.ml", "parser.mli": "parser.mly" {
50 "lexer.ml": "lexer.mll", "lexer.cmi", "parser.ml" {
56 # .depend: parser.mly lexer.mll *.mli
58 # @MENHIR@ --depend parser.mly > $@-t
59 # ocamldep lexer.mll *.mli >> $@-t
64 # .PHONY: all clean depend