permit multiline comments and strings in macros
[bpt/coccinelle.git] / _tags
CommitLineData
abad11c5
C
1# Compile all .ml files against some base libraries
2# (defined in the plugin as unix,str,nums and bigarray)
3<**/*.ml>: use_base
4
5#
6# Cocci sources and directories
7#
8
9<commons>: include
10<commons/ocamlextra>: include
11<commons/ocollection>: include
12
13<globals>: include
14<globals/regexp_pcre.ml>: use_pcre
15
16<parsing_cocci>: include
17<parsing_cocci/parser_cocci_menhir.ml>: use_menhirLib, nowarn20
18
19<parsing_c>: include
20<ctl>: include
21<engine>: include
22<popl09>: include
23<extra>: include
24
25<ocaml>: include
26<ocaml/coccilib.ml{,i}>: use_pcre
27
28<python>: include
29<python/yes_pycocci.ml>: thread, use_pycaml
30
31# some users have a symlink 'result' pointing to the outcome
32# of the build, which causes troubles with the hygiene check.
33<result>: -traverse
34
35
36#
37# Subdirectories
38#
39
40<engine/engine.{cma,cmxa}>: use_pcre
41<globals/globals.{cma,cmxa}>: use_pcre
42<ocaml/ocaml.{cma,cmxa}>: use_pcre
43<parsing_c/parsing_c.{cma,cmxa}>: use_pcre
44<parsing_cocci/parsing_cocci.{cma,cmxa}>: use_pcre, use_menhirLib
45<popl09/popl09.{cma,cmxa}>: use_pcre
46<python/python.{cma,cmxa}>: use_pcre, use_pycaml
47
48
49#
50# Bundled packages
51#
52
53# apriori remove the traverse tag from the bundle
54# directories to prevent them from being included.
55# The traverse tag will be added by the plugin for
56# the bundles that are included.
57<bundles/*>: -traverse
58
59<bundles/pcre/pcre.{cma,cmxa}>: use_pcre
60<bundles/pycaml/pycaml.{cma,cmxa}>: thread, use_pycaml
61
62# Interaction between the bundles and the plugin.
63<bundles/pcre/libpcre_stubs.a>: use_pcre
64<bundles/pcre/*/lib/pcre_stubs.c>: use_pcre
65<bundles/pycaml/libpycaml_stubs.a>: use_pycaml
66<bundles/pycaml/*/pycaml_stubs.c>: pp_pycaml, use_pycaml
67<bundles/pycaml/*/pycaml.ml>: pp_pycaml
68<bundles/menhirLib/*/src/*.cmx>: for-pack(MenhirLib)
69
70
71#
72# Hygiene
73#
74
75# Some lexers and parsers are precompiled in the
76# source distribution to make some preprocessors
77# optional
78
79<parsing_c/parser_c.mly>: not_hygienic
80<parsing_c/lexer_c.mll>: not_hygienic
81<parsing_cocci/lexer_cli.mll>: not_hygienic
82<parsing_cocci/lexer_script.mll>: not_hygienic
83<parsing_cocci/lexer_cocci.mll>: not_hygienic
84<parsing_cocci/parser_cocci_menhir.mly>: not_hygienic
85<parsing_cocci/parser_cocci_menhir.ml{,i}>: precious
86<ocaml/coccilib/coccilib.cmi>: not_hygienic
87
88
89#
90# Applications
91# Main is the entry point of spatch.
92#
93
94# library dependencies of spatch.
95<main.{byte,native}>: thread, use_base, use_menhirLib, use_pcre, use_pycaml
96
97# some test tools in the subdirectories
98<parsing_cocci/main.{byte,native}>: use_base, use_pcre
99<ctl/test_ctl.{byte,native}>: use_base
100
101
102# Build tools/all.otarget for all tools, or
103# tools/all.opt.otarget for all tools with the native compiler.
104
105<tools/gitgrep.{byte,native}>: use_base
106<tools/gitsort.{byte,native}>: use_base
107<tools/process_isoprofile.{byte,native}>: use_base
108<tools/alloc_free.{byte,native}>: use_base
109<tools/bridge.{byte,native}>: use_base
110<tools/spp.{byte,native}>: use_base
111<tools/splitpatch.{byte,native}>: use_base
112<tools/extract_c_and_res.{byte,native}>: use_base
113<tools/cstripenv.{byte,native}>: use_base, use_pcre
114<tools/distributed/cleanup.{byte,native}>: use_base
115
116
117#
118# Documentation
119#
120
121<ocaml/man.docdir/index.html>: gen_man, use_menhirLib, use_pcre, use_pycaml
122<ocaml/html.docdir/index.html>: gen_html, use_menhirLib, use_pcre, use_pycaml