You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It adds a `[sites]` section in packages' description. In this section, one can declare the sites like `etc = ["conf"]` which will trigger the `etc/<package>/conf` directory.
As we follow the general `dune` semantic, only the following root sites are available:
- `lib`
- `bin`
- `sbin`
- `toplevel`
- `share`
- `etc`
- `stublibs`
- `doc`
For `lib` and `share`, additionnal specification must be provided :
```
[[sites.lib]]
root = false
exec = true
dir = "foo"
[[sites.share]]
root = true
dir = "www"
```
`root` means that `<package>` subdir shall be ignored (default is `false`) and `exec` means that executable flag must be set for files installed here (ignored in `share` and default is `false`).
By default, the generated dynamic sites modules is "Sites" accessible through `<package module>.Sites`. One can modify this name in `name` field :
```
[sites]
name = "mysites"
```
will provide the `Mysites` module instead of `Sites`.
Copy file name to clipboardExpand all lines: dune-project
+27-4
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,5 @@
1
-
(lang dune 2.7)
1
+
(lang dune 2.8)
2
+
(using dune_site 0.1)
2
3
; This file was generated by drom, using drom.toml
3
4
4
5
(cram enable)
@@ -13,23 +14,38 @@
13
14
(name drom)
14
15
(synopsis"The drom tool is a wrapper over opam/dune in an attempt to provide a cargo-like user experience")
15
16
(description "The drom tool is a wrapper over opam/dune in an attempt to provide a cargo-like\nuser experience. It can be used to create full OCaml projects with\nsphinx and odoc documentation. It has specific knowledge of Github and\nwill generate files for Github Actions CI and Github pages.\n")
17
+
18
+
(sites
19
+
20
+
)
21
+
16
22
(depends
17
-
(ocaml (>= 4.07.0))
23
+
(ocaml (>= 4.08.0))
18
24
(drom_lib (= version))
19
25
ppx_inline_test
20
26
ppx_expect
21
27
odoc
22
28
ocamlformat
29
+
(dune ( >= 2.8 ))
23
30
)
24
31
)
25
32
26
33
(package
27
34
(name drom_lib)
28
35
(synopsis"The drom tool is a wrapper over opam/dune in an attempt to provide a cargo-like user experience")
29
36
(description "The drom tool is a wrapper over opam/dune in an attempt to provide a cargo-like\nuser experience. It can be used to create full OCaml projects with\nsphinx and odoc documentation. It has specific knowledge of Github and\nwill generate files for Github Actions CI and Github pages.\n")
37
+
38
+
(sites
39
+
40
+
)
41
+
30
42
(depends
31
-
(ocaml (>= 4.07.0))
43
+
(ocaml (>= 4.08.0))
44
+
(ppx_protocol_conv ( >= 5.2.1 ))
45
+
(otoml ( >= 1.0.4 ))
32
46
(omd ( >= 2.0 ))
47
+
(jingoo ( >= 1.5.0 ))
48
+
(fmt ( >= 0.9.0 ))
33
49
(ez_subst ( >= 0.1 ))
34
50
(ez_opam_file (and (>= 0.1.0)(< 1.0.0)))
35
51
(ez_file (and (>= 0.3.0)(< 1.0.0)))
@@ -40,22 +56,29 @@
40
56
ppx_expect
41
57
odoc
42
58
ocamlformat
59
+
(dune ( >= 2.8 ))
43
60
)
44
61
)
45
62
46
63
(package
47
64
(name drom_toml)
48
65
(synopsis"The drom tool is a wrapper over opam/dune in an attempt to provide a cargo-like user experience")
49
66
(description "The drom tool is a wrapper over opam/dune in an attempt to provide a cargo-like\nuser experience. It can be used to create full OCaml projects with\nsphinx and odoc documentation. It has specific knowledge of Github and\nwill generate files for Github Actions CI and Github pages.\n")
0 commit comments