File: Makefile

package info (click to toggle)
ocaml 5.4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 44,372 kB
  • sloc: ml: 370,196; ansic: 52,820; sh: 27,419; asm: 5,462; makefile: 3,684; python: 974; awk: 278; javascript: 273; perl: 59; fortran: 21; cs: 9
file content (50 lines) | stat: -rw-r--r-- 895 bytes parent folder | download | duplicates (2)
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
ROOTDIR = ../../..

include $(ROOTDIR)/Makefile.common
include $(ROOTDIR)/Makefile.best_binaries

OCAMLC ?= $(BEST_OCAMLC) $(STDLIBFLAGS)
OCAMLOPT ?= $(BEST_OCAMLOPT) $(STDLIBFLAGS)

PGM=forbidden.exe publish.exe
MOREPGM=
MOREBYT=$(MOREPGM:.exe=.byt)
BYT=$(PGM:.exe=.byt)
CMO=$(PGM:.exe=.cmo)
CMX=$(PGM:.exe=.cmx)
OBJ=opt.cmx barrier.cmx hist.cmx shared.cmx run.cmx outcome.cmx
BBJ=$(OBJ:.cmx=.cmo)
SRC=$(OBJ:.cmx=.ml) $(PGM:.exe=.ml) $(MOREPGM:.exe=.ml)
MLI=$(OBJ:.cmx=.mli)

all: native byte

native: $(PGM)

byte: $(BYT)

clean::
	/bin/rm -f $(MOREPGM) $(MOREBYT) $(BYT) $(PGM) *.cmo *.cmi *.cmx *.o *~ *.s

%.cmx: %.ml
	$(OCAMLOPT) -c $<

%.cmo: %.ml
	$(OCAMLC) -c $<

%.cmi: %.mli
	$(OCAMLC) -c $<

%.s: %.ml
	$(OCAMLOPT) -S -c $<

%.exe: %.cmx $(OBJ)
	$(OCAMLOPT) -o $@ $(OBJ) $<

%.byt: $(BBJ) %.cmo
	$(OCAMLC) -o $@ $^

depend:
	$(OCAMLDEP_CMD) $(SRC) $(MLI) > .depend

-include .depend