|
*.a (contains the compiled machine code)
|
|
A library must depend on the precise version of the OCaml compiler, for example: ocaml(runtime) = 3.10.0
|
|
a license file (if present) marked %doc
|
|
Binaries should be stripped, as per ordinary Fedora packaging guidelines.
|
|
%build make byte %if %opt make opt %endif
|
|
Bytecode-only architectures
|
|
*.cma (contains the bytecode)
|
|
*.cmi (contains the compiled signature)
|
|
.cmo files are not normally included. There are two exceptions where *.cmo files may be included:
|
|
*.cmo object files. Exception: see above.
|
|
*.cmxa (describes the compiled machine code)
|
|
*.cmx (if present, allows cross-module optimizations)
|
|
-data subpackage
|
|
-devel subpackage
|
|
-doc subpackage
|
|
Documentation, examples and other articles which are useful to the developer may be included in the -devel sub-package. The license file (which is in the main package) does not need to be included again in the -devel subpackage.
|
|
For each module that library A uses from another library B, library A must have a Requires of the form: ocaml(Modulename) = MD5hash Similarly for each module that library A may provide to other libraries, library A must have a Provides of the same form.
|
|
Further reading
|
|
%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
|
|
%global _use_internal_dependency_generator 0 %global __find_requires /usr/lib/rpm/ocaml-find-requires.sh %global __find_provides /usr/lib/rpm/ocaml-find-provides.sh
|