package b0
Install
dune-project
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.keyavailable is an opam available: field value. This is a raw string in opam sntax that defines the whole field.
val build : string B0_meta.keybuild 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.keydepends 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.keydepopts is an opam depopts: field value.
val conflicts : pkg_spec list B0_meta.keyconflicts is an opam conflicts: field value.
val file_addendum : File.t B0_meta.keyfile_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.keyinstall 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.keyname 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.keypin_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_packp.B0_meta.synopsisandB0_meta.description. The fields are tentatively derived from an existingREADME.mdin 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.