-
Notifications
You must be signed in to change notification settings - Fork 10
/
_tags
28 lines (23 loc) · 1.26 KB
/
_tags
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
# The general set of flags for compiling Mezzo.
# - We enable debug information.
# - Menhir is our parser generator.
# - We use the following libraries: Ocamlbuild_Plugin, Unix, Str
# - We generate .annot files and .cmt files.
# - We use the following ocamlfind packages: yojson, menhirlib, ulex, pprint
# - We don't use [use_unix] because it plays badly with ocamlfind and leads to
# the infamous "unix.cma is linked twice" problem.
not (<corelib/*> or <stdlib/*>): debug, \
menhir, \
annot, bin_annot, strict_sequence, \
package(yojson), package(menhirLib), package(ulex), package(pprint), \
package(fix), package(unix), package(functory), package(str), package(ocamlbuild), \
package(unix)
# Enable the "nazi warnings". A few files really trigger too many warnings: the
# generated parser and lexer files, as well as the imported [patricia.ml].
not (<parsing/Lexer.*> or <lib/patricia.*> or <parsing/grammar.*> or <corelib/*> or <stdlib/*>): my_warnings
# Our lexer generator is ulex.
"parsing/Lexer.ml": syntax(camlp4o), syntax(pa_ulex)
# Comment out the line below to compile with coverage (requires bisect,
# available in OPAM).
#not <parsing/Lexer.*> and not <parsing/grammar.*>: package(bisect), syntax(camlp4o), syntax(bisect_pp)
<corelib/*> or <stdlib/*>: mezzo