[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] OCaml 4.02 support now in mirage-xen.2.2.0

  • To: mirageos-devel <mirageos-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Anil Madhavapeddy <anil@xxxxxxxxxx>
  • Date: Fri, 23 Jan 2015 17:36:14 +0100
  • Delivery-date: Fri, 23 Jan 2015 16:36:25 +0000
  • List-id: Developer list for MirageOS <mirageos-devel.lists.xenproject.org>

I've just tagged a release of Mirage-xen 2.2.0 in:

It primarily adds OCaml 4.02 support (see release notes below).  If anyone sees 
any compilation problems (especially on ARM) please let me know via an issue or 
on the list.  Try to keep libraries running on 4.01.0 for a while.

This releases adds support for OCaml 4.02+ compilation, and changes the Xen
backend build for Mirage significantly by:

* removing the OCaml compiler runtime from the mirage-platform, which makes
  it simpler to work across multiple revisions of the compiler.  It now uses
  the `ocaml-src` OPAM package to grab the current switch's version of the
  OCaml runtime.
* split the Xen runtime build into discrete `pkg-config` libraries:
  * `mirage-xen-posix.pc` : in the `xen-posix/` directory, is the nano-posix
     layer built with no knowledge of OCaml
  * `mirage-xen-minios.pc`: defines the `__INSIDE_MINIOS__` macro to expose
     internal state via the MiniOS headers (for use only by libraries that
     know exactly what they are doing with the MiniOS)
  * `mirage-xen-ocaml.pc`: in `xen-ocaml/core/`, this builds the OCaml asmrun,
     Bigarray and Str bindings using the `mirage-xen-posix` layer.
  * `mirage-xen-ocaml-bindings.pc`: in `xen-ocaml/bindings/`, these are bindings
     required by the OCaml libraries to MiniOS.  Some of the bindings use MiniOS
     external state and hence use `mirage-xen-minios`, whereas others
    (`cstruct_stubs` and `barrier_stubs` are just OCaml bindings and so just
    use `mirage-xen-posix`).
  * `mirage-xen.pc`: depends on all the above to provide the same external
    interface as the current `mirage-platform`.

The OCaml code is now built using OASIS, since the C code is built entirely
separately and could be moved out into a separate OPAM package entirely.

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.