package b0
Install
Dune Dependency
Authors
Maintainers
Sources
sha512=00a6868b4dfa34565d0141b335622a81a0e8d5b9e3c6dfad025dabfa3df2db2a1302b492953bbbce30c3a4406c324fcec25250a00b38f6d18a69e15605e3b07e
doc/b0.kit/B0_opam/Meta/index.html
Module B0_opam.Meta
opam
metadata.
Some of the metadata is covered by standard keys.
The type for package specifications. A package name and a filtered package formula, use ""
if you don't have any constraint.
val available : string B0_meta.key
available
is an opam available:
field value. This is a raw string in opam sntax that defines the whole field.
val build : string B0_meta.key
build
is an opam build:
field value. This is a raw string in opam syntax that defines the whole field. Used to override automatic opam file generation, see pkg_of_pack
.
val depends : pkg_spec list B0_meta.key
depends
is an opam depends:
field value. Used to override automatic opam file dependency generation, see pkg_of_pack
.
val depopts : pkg_spec list B0_meta.key
depopts
is an opam depopts:
field value.
val conflicts : pkg_spec list B0_meta.key
conflicts
is an opam conflicts:
field value.
val file_addendum : File.t B0_meta.key
file_addendum
is an opam
file fragment appended at the end of a generated opam
file. See B0_opam.File.pkg_of_meta
.
val install : string B0_meta.key
install
is an opam install:
field value. This is a raw string in opam syntax that defines the whole field. Used to override automatic opam file generation, see pkg_of_pack
.
val name : string B0_meta.key
name
is an opam
name:
field value. Use to override automatic opam
package name generation, see pkg_of_pack
.
val pin_depends : (string * string) list B0_meta.key
pin_depends
is an opam pin-depends:
field value.
Package derivation
pkg_of_pack p
is opam
package metadata for pack p
ready to be used with File.pkg_of_meta
to derive an opam package file.
This is p
's metadata with the following fields added if they are unspecified:
name
, the value ofB0_opam.pkg_name_of_pack
p
.B0_meta.synopsis
andB0_meta.description
. The fields are tentatively derived from an existingREADME.md
in the scope directory ofp
. The first marked up section of the file is extracted, its title is parsed according to the pattern '$(NAME) $(SEP) $(SYNOPSIS)' to get a synopsis line and the body up to the next (sub)section defines the description.build
, a locked b0 build of the pack is defined.depends
, we collect the OCaml libraries required by units in the pack, derive a package names out of them. FIXME. This is the poc but it's not workable for now we don't have enough metadata in library names.