opam-version: "2.0"
maintainer: "jeremie@dimino.org"
homepage: "https://github.com/ocaml/camlp4"
license: "LGPL-2.1-only"
build: [
  ["./configure" "--bindir=%{bin}%" "--libdir=%{lib}%/ocaml" "--pkgdir=%{lib}%"]
  [make "all"]
]
depends: [
  "ocaml"
  "ocaml-variants"
    {= "4.02.0+modular-implicits" | = "4.02.1+modular-implicits-ber"}
  "ocamlfind"
  "conf-which" {build}
  "ocamlbuild" {build}
]
install: [
  [make "install" "install-META"]
]
remove: [
  ["rm" "-rf" "%{lib}%/camlp4"]
  ["rm" "-f" "%{bin}%/camlp4"  "%{bin}%/camlp4boot" "%{bin}%/mkcamlp4"
             "%{bin}%/camlp4r" "%{bin}%/camlp4rf"   "%{bin}%/camlp4orf"
             "%{bin}%/camlp4o" "%{bin}%/camlp4of"   "%{bin}%/camlp4oof"
             "%{bin}%/camlp4prof"  "%{bin}%/camlp4rf.opt"  "%{bin}%/camlp4orf.opt"
             "%{bin}%/camlp4o.opt" "%{bin}%/camlp4oof.opt" "%{bin}%/camlp4r.opt"
  ]
]
available: opam-version >= "1.2.1"
bug-reports: "https://github.com/ocaml/camlp4/issues"
dev-repo: "git+https://github.com/ocaml/camlp4.git"
synopsis:
  "Camlp4 is a system for writing extensible parsers for programming languages"
description: """
It provides a set of OCaml libraries that are used to define grammars as well
as loadable syntax extensions of such grammars. Camlp4 stands for Caml
Preprocessor and Pretty-Printer and one of its most important applications is
the definition of domain-specific extensions of the syntax of OCaml.

Camlp4 was part of the official OCaml distribution until its version 4.01.0.
Since then it has been replaced by a simpler system which is easier to maintain
and to learn: ppx rewriters and extension points.

This version of Camlp4 installs using the `ocamlfind` packaging utility.  If
you were using `+I camlp4` to directly locate Camlp4, this will no longer work."""
flags: light-uninstall
url {
  src:
    "https://github.com/ocamllabs/camlp4/archive/modular-implicits-4.02b.tar.gz"
  checksum: "md5=c3cb26bf9ef2bc4bb02acbfc75f5abe3"
}
