TOP=..
.include "$(TOP)/mk/base.mk"

PROG=penguin
SRCS=main.ml

OCAMLLIBS+=unix.$(OCAMLLIBEXT)
OCAMLLIBS+=nums.$(OCAMLLIBEXT)

OCAMLINCS+=-I $(Z3DIR)
OCAMLLIBS+=z3ml.$(OCAMLLIBEXT)

# support must be first
OCAMLINCS+=-I ../support
OCAMLLIBS+=../support/libsupport.$(OCAMLLIBEXT)

# logic and smt are separate
OCAMLINCS+=-I ../logic
OCAMLLIBS+=../logic/liblogic.$(OCAMLLIBEXT)

OCAMLINCS+=-I ../smt
OCAMLLIBS+=../smt/libsmt.$(OCAMLLIBEXT)

# spec and symexec depend on logic (but not smt, and not each other)
OCAMLINCS+=-I ../spec
OCAMLLIBS+=../spec/libspec.$(OCAMLLIBEXT)

OCAMLINCS+=-I ../symexec
OCAMLLIBS+=../symexec/libsymexec.$(OCAMLLIBEXT)

# synth must be last
OCAMLINCS+=-I ../synth
OCAMLLIBS+=../synth/libsynth.$(OCAMLLIBEXT)

.include "$(TOP)/mk/ocaml.mk"
