···
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: "641a95d2254ca7c51c97f07f2eed85b7a95db954"
53
+
src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz"
55
+
"sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e"
56
+
"sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44"