opam-version: "2.0"
authors: ["Daniel de Rauglaudre" "Nicolas Pouillard"]
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 "clean"]
  [make "all"] {ocaml:native-dynlink}
  [make "byte"] {!ocaml:native-dynlink}
]
depends: [
  "ocaml" {>= "4.07" & < "4.08"}
  "ocamlbuild" {build}
]
install: [
  [make "install" "install-META"]
]
remove: [
  ["ocamlfind" "remove" "camlp4"]
  ["rm" "-rf" "%{lib}%/ocaml/camlp4"]
  ["rm" "-f" "%{bin}%/camlp4"  "%{bin}%/camlp4boot" "%{bin}%/mkcamlp4"
             "%{bin}%/camlp4r" "%{bin}%/camlp4rf"   "%{bin}%/camlp4orf"
             "%{bin}%/camlp4o" "%{bin}%/camlp4of"   "%{bin}%/camlp4oof"
             "%{bin}%/camlp4prof"]
]
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."""
conflicts: ["ocaml-system"]
flags: light-uninstall
url {
  src: "https://github.com/ocaml/camlp4/archive/4.07+1.tar.gz"
  checksum: "md5=6b13df04b55eca41facf11eb0f099bd6"
}
