(env
 (dev     (flags :standard -rectypes -warn-error -a+31 -w +28+33-9-23-32-58-67-69))
 (ci      (flags :standard -rectypes -warn-error +a    -w +28+33-9-23-32-58-67-69))
 (release (flags :standard -rectypes -warn-error -a    -w +28+33-9-23-32-58-67-69)
          (ocamlopt_flags -O3 -unbox-closures)))

(include_subdirs unqualified)

(generate_sites_module
 (module ecDuneSites)
 (sites easycrypt))

(library 
 (name ecLib)
 (public_name easycrypt.ecLib)
 (foreign_stubs (language c) (names eunix))
 (modules :standard \ ec)
 (libraries batteries camlp-streams dune-build-info dune-site inifiles why3 yojson zarith)
)

(executable
 (public_name easycrypt)
 (name ec)
 (modules ec)
 (promote (until-clean))
 (libraries batteries camlp-streams dune-build-info dune-site inifiles why3 yojson zarith ecLib))

(ocamllex ecLexer)

(menhir
 (modules ecParser)
 (explain true)
 (flags --table))
