-
Notifications
You must be signed in to change notification settings - Fork 1
/
Caml.mk
70 lines (55 loc) · 2.38 KB
/
Caml.mk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
##########################################################################
# This file is part of BINSEC. #
# #
# Copyright (C) 2016-2019 #
# CEA (Commissariat à l'énergie atomique et aux énergies #
# alternatives) #
# #
# you can redistribute it and/or modify it under the terms of the GNU #
# Lesser General Public License as published by the Free Software #
# Foundation, version 2.1. #
# #
# It is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU Lesser General Public License for more details. #
# #
# See the GNU Lesser General Public License version 2.1 #
# for more details (enclosed in the file licenses/LGPLv2.1). #
# #
##########################################################################
.PHONY: default all bin byt clean cleandir configure depend beforedepend
# Compilation rules
.SUFFIXES: .o .c
.SUFFIXES: .cmx .cmxa .cmo .cmi .cma .ml .mli .mll .mly
.cmo.o:
$(PP) "COBJ $@"
$(CAMLBYT) -custom -output-obj -o $@ $<
.c.o:
$(CAMLBYT) -ccopt "-fPIC -o $@" -c $<
.ml.cmo:
$(PP_BYT) $@
$(CAMLBYT) $(CAMLINCLUDES) $(CAMLFLAGS) $(CAMLWARNINGS) -c $<
.mli.cmi:
$(PP_BYT) $@
$(CAMLBYT) $(CAMLFLAGS) $(CAMLINCLUDES) -c $<
.ml.cmx:
$(PP_OPT) $@
$(CAMLBIN) $(CAMLINCLUDES) $(CAMLFLAGS) $(CAMLWARNINGS) -c $<
.mly.ml:
$(PP_YACC) $@
$(CAMLYAC) $(CAMLYACOPTS) $<
.mly.mli:
$(PP_YACC) $@
$(CAMLYAC) $(CAMLYACOPTS) $<
.mll.ml:
$(PP_LEX) $@
$(CAMLLEX) $(CAMLLEXOPTS) $<
# Generic clean up
cleandir::
$(RRM) *.cm[ioxa] *.cmxa *.o *.a *.annot *.obj *.lib *~ .*~ a.out .\#*
configure:: cleandir
# Rebuilding dependencies
depend:: beforedepend
$(CAMLDEP) $(CAMLINCLUDES) $(CAMLFILES) > .depend
include .depend