···
2
+
synopsis: "Fast, portable, and opinionated build system"
5
+
dune is a build system that was designed to simplify the release of
6
+
Jane Street packages. It reads metadata from "dune" files following a
7
+
very simple s-expression syntax.
9
+
dune is fast, has very low-overhead, and supports parallel builds on
10
+
all platforms. It has no system dependencies; all you need to build
11
+
dune or packages using dune is OCaml. You don't need make or bash
12
+
as long as the packages themselves don't use bash explicitly.
14
+
dune supports multi-package development by simply dropping multiple
15
+
repositories into the same directory.
17
+
It also supports multi-context builds, such as building against
18
+
several opam roots/switches simultaneously. This helps maintaining
19
+
packages across several versions of OCaml and gives cross-compilation
22
+
maintainer: ["Jane Street Group, LLC <opensource@janestreet.com>"]
23
+
authors: ["Jane Street Group, LLC <opensource@janestreet.com>"]
25
+
homepage: "https://github.com/ocaml/dune"
26
+
doc: "https://dune.readthedocs.io/"
27
+
bug-reports: "https://github.com/ocaml/dune/issues"
29
+
"merlin" {< "3.4.0"}
30
+
"ocaml-lsp-server" {< "1.3.0"}
31
+
"dune-configurator" {< "2.3.0"}
33
+
"dune-release" {< "1.3.0"}
34
+
"js_of_ocaml-compiler" {< "3.6.0"}
35
+
"jbuilder" {= "transition"}
37
+
dev-repo: "git+https://github.com/ocaml/dune.git"
39
+
# opam 2 sets OPAM_SWITCH_PREFIX, so we don't need a hardcoded path
40
+
["ocaml" "configure.ml" "--libdir" lib] {opam-version < "2"}
41
+
["ocaml" "bootstrap.ml" "-j" jobs]
42
+
["./dune.exe" "build" "-p" name "--profile" "dune-bootstrap" "-j" jobs]
45
+
# Please keep the lower bound in sync with .github/workflows/workflow.yml,
46
+
# dune-project and min_ocaml_version in bootstrap.ml
47
+
("ocaml" {>= "4.08"} | ("ocaml" {< "4.08~~"} & "ocamlfind-secondary"))
51
+
x-commit-hash: "e41c66259135d6d1d72b031be6684bf8826a2586"
53
+
src: "https://github.com/ocaml/dune/releases/download/2.9.1/dune-2.9.1.tbz"
55
+
"sha256=b374feb22b34099ccc6dd32128e18d088ff9a81837952b29f05110b308c09f26"
56
+
"sha512=fce1aa520db785c25ded75a959e9dafeb7887d4f5deeb14b044cd5b9e2d235dca24589d794d2f01513765bc4764cf72f8659bd15f3a4fc06efa61363dc5d709b"