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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
# Specifications for the "@NAME@" preprocessor:
requires = ""
version = "[distributed with Ocaml]"
description = "Base for @NAME@ syntax extensions"
directory = "+@NAME@"
# For the toploop:
archive(byte,toploop,@NAME@o) = "@NAME@o.cma"
archive(byte,toploop,@NAME@r) = "@NAME@r.cma"
# Scheme-like syntax:
# Do #predicates "syntax,@NAME@scheme", followed by #require "@NAME@"
archive(byte,toploop,@NAME@scheme) = "@NAME@sch.cma"
# Standard ML-like syntax:
# Do #predicates "syntax,@NAME@sml", followed by #require "@NAME@"
archive(byte,toploop,@NAME@sml) = "gramlib.cma @NAME@_top.cma pa_sml.cmo"
# Lisp-like syntax:
# Do #predicates "syntax,@NAME@lisp", followed by #require "@NAME@"
archive(byte,toploop,@NAME@lisp) = "gramlib.cma @NAME@_top.cma pa_lisp.cmo"
# For the preprocessor itself:
archive(syntax,preprocessor,@NAME@o) = "pa_o.cmo pa_op.cmo pr_dump.cmo"
archive(syntax,preprocessor,@NAME@r) = "pa_r.cmo pa_rp.cmo pr_dump.cmo"
archive(syntax,preprocessor,@NAME@sml) = "pa_sml.cmo pr_dump.cmo"
archive(syntax,preprocessor,@NAME@scheme) = "pa_scheme.cmo pr_dump.cmo"
archive(syntax,preprocessor,@NAME@lisp) = "pa_lisp.cmo pr_dump.cmo"
preprocessor = "@NAME@ -nolib"
package "gramlib" (
requires(toploop) = "@NAME@"
version = "[distributed with Ocaml]"
description = "Grammar library to create syntax extensions"
archive(byte) = "gramlib.cma"
archive(byte,toploop) = "" # already contained in @NAME@*.cma
archive(native) = "gramlib.cmxa"
)
package "quotations" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: Quotations to create AST nodes"
archive(syntax,preprocessor) = "q_MLast.cmo"
archive(syntax,toploop) = "q_MLast.cmo"
)
package "phony_quotations" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: Phony quotations"
archive(syntax,preprocessor) = "q_phony.cmo"
archive(syntax,toploop) = "q_phony.cmo"
)
package "extend" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: EXTEND the @NAME@ grammar"
archive(syntax,preprocessor) = "pa_extend.cmo"
archive(syntax,toploop) = "pa_extend.cmo"
)
package "extfun" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: Extensible functions"
archive(syntax,preprocessor) = "pa_extfun.cmo"
archive(syntax,toploop) = "pa_extfun.cmo"
)
package "fstream" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: Functional stream parsers"
archive(syntax,preprocessor) = "pa_fstream.cmo"
archive(syntax,toploop) = "pa_fstream.cmo"
)
package "macro" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: Conditional compilation"
archive(syntax,preprocessor) = "pa_macro.cmo"
archive(syntax,toploop) = "pa_macro.cmo"
)
package "unit_constraints" (
requires = "@NAME@"
version = "[distributed with Ocaml]"
description = "Syntax extension: Type constraints of type unit (revised syntax only)"
archive(syntax,preprocessor,@NAME@r) = "pa_ru.cmo"
archive(syntax,toploop,@NAME@r) = "pa_ru.cmo"
error(syntax,-@NAME@r) = "Not available"
)
|