mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-12-22 04:13:33 +01:00
44 lines
1.2 KiB
Makefile
44 lines
1.2 KiB
Makefile
.NOPARALLEL:
|
|
|
|
INCLUDE_DIRS=Nuclei,Utils,Basis
|
|
LIBS=
|
|
PKGS=
|
|
OCAMLCFLAGS="-g -warn-error A"
|
|
OCAMLOPTFLAGS="opt -O3 -nodynlink -remove-unused-arguments -rounds 16 -inline 100 -inline-max-unroll 100"
|
|
OCAMLBUILD=ocamlbuild -j 0 -cflags $(OCAMLCFLAGS) -lflags $(OCAMLCFLAGS) -Is $(INCLUDE_DIRS) -ocamlopt $(OCAMLOPTFLAGS)
|
|
MLLFILES=$(wildcard */*.mll) $(wildcard *.mll)
|
|
MLYFILES=$(wildcard */*.mly) $(wildcard *.mly)
|
|
MLFILES= $(wildcard */*.ml) $(wildcard *.ml)
|
|
MLIFILES=$(wildcard */*.mli) $(wildcard *.mli)
|
|
ALL_EXE=$(patsubst %.ml,%.native,$(wildcard run_*.ml))
|
|
|
|
.PHONY: default
|
|
|
|
default: $(ALL_EXE)
|
|
|
|
tests: $(ALL_TESTS)
|
|
|
|
qpackage.odocl: $(MLIFILES)
|
|
ls $(MLIFILES) | sed "s/\.mli//" > qpackage.odocl
|
|
|
|
doc: qpackage.odocl
|
|
$(OCAMLBUILD) qpackage.docdir/index.html -use-ocamlfind $(PKGS)
|
|
|
|
%.inferred.mli: $(MLFILES)
|
|
$(OCAMLBUILD) $*.inferred.mli -use-ocamlfind $(PKGS)
|
|
mv _build/$*.inferred.mli .
|
|
|
|
%.byte: $(MLFILES) $(MLIFILES) $(MLLFILES) $(MLYFILES)
|
|
rm -f -- $*
|
|
$(OCAMLBUILD) $*.byte -use-ocamlfind $(PKGS)
|
|
ln -s $*.byte $*
|
|
|
|
%.native: $(MLFILES) $(MLIFILES) $(MLLFILES) $(MLYFILES)
|
|
rm -f -- $*
|
|
$(OCAMLBUILD) $*.native -use-ocamlfind $(PKGS)
|
|
ln -s $*.native $*
|
|
|
|
clean:
|
|
rm -rf _build $(ALL_EXE) $(ALL_TESTS) *.native *.byte
|
|
|