From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vincent Hanquez Subject: [PATCH 00/10][RFC][v2] merge ocaml xenstored and dependencies Date: Tue, 9 Mar 2010 14:41:05 +0000 Message-ID: <1268145675-10375-1-git-send-email-vincent.hanquez@eu.citrix.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------1.7.0" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: Vincent Hanquez List-Id: xen-devel@lists.xenproject.org --------------1.7.0 Content-Type: text/plain; charset="UTF-8"; format=fixed Content-Transfer-Encoding: quoted-printable Add ocaml xenstored into xen as an alternative to C xenstored.=20 The goal is to choose it as the default xenstored on the target machine w= hen it has been built. build hook mechanism is not ideal, but should be safe for platform that cannot build ocaml and/or would have some portability issues. This is RFC, although the first 5 patches are completly safe since they j= ust introduce new files and hook with default =3Dn the new files. only the 6t= h patch make the default to build ocaml tools with fallback if not available. since v1: * rebased to latest xen-unstable * remove stdext ocaml library and folded dependencies into xenstored * split dependencies in smaller patches Vincent Hanquez (10): add ocaml mmap bindings implementation. add ocaml XC bindings. add XS ocaml bindings. add uuid ocaml bindings add logs ocaml bindings add ocaml xenstored add compilation makefile to ocaml directory remove hook from external ocaml repository add ocaml tools to build if defined. default to n default ocaml tools config variable to y Config.mk | 15 +- tools/Makefile | 23 +- tools/ocaml/Makefile | 36 + tools/ocaml/Makefile.rules | 93 ++ tools/ocaml/common.make | 28 + tools/ocaml/libs/eventchn/META.in | 4 + tools/ocaml/libs/eventchn/Makefile | 28 + tools/ocaml/libs/eventchn/eventchn.ml | 27 + tools/ocaml/libs/eventchn/eventchn.mli | 26 + tools/ocaml/libs/eventchn/eventchn_stubs.c | 173 ++++ tools/ocaml/libs/log/META.in | 4 + tools/ocaml/libs/log/Makefile | 41 + tools/ocaml/libs/log/log.ml | 258 +++++ tools/ocaml/libs/log/log.mli | 55 + tools/ocaml/libs/log/logs.ml | 197 ++++ tools/ocaml/libs/log/logs.mli | 46 + tools/ocaml/libs/log/syslog.ml | 26 + tools/ocaml/libs/log/syslog.mli | 41 + tools/ocaml/libs/log/syslog_stubs.c | 73 ++ tools/ocaml/libs/mmap/META.in | 4 + tools/ocaml/libs/mmap/Makefile | 27 + tools/ocaml/libs/mmap/mmap.ml | 31 + tools/ocaml/libs/mmap/mmap.mli | 28 + tools/ocaml/libs/mmap/mmap_stubs.c | 136 +++ tools/ocaml/libs/mmap/mmap_stubs.h | 33 + tools/ocaml/libs/uuid/META.in | 4 + tools/ocaml/libs/uuid/Makefile | 26 + tools/ocaml/libs/uuid/uuid.ml | 88 ++ tools/ocaml/libs/uuid/uuid.mli | 53 + tools/ocaml/libs/xb/META.in | 4 + tools/ocaml/libs/xb/Makefile | 41 + tools/ocaml/libs/xb/op.ml | 84 ++ tools/ocaml/libs/xb/packet.ml | 50 + tools/ocaml/libs/xb/partial.ml | 44 + tools/ocaml/libs/xb/xb.ml | 189 ++++ tools/ocaml/libs/xb/xb.mli | 83 ++ tools/ocaml/libs/xb/xb_stubs.c | 74 ++ tools/ocaml/libs/xb/xs_ring.ml | 18 + tools/ocaml/libs/xb/xs_ring_stubs.c | 117 +++ tools/ocaml/libs/xc/META.in | 4 + tools/ocaml/libs/xc/Makefile | 28 + tools/ocaml/libs/xc/xc.h | 191 ++++ tools/ocaml/libs/xc/xc.ml | 340 +++++++ tools/ocaml/libs/xc/xc.mli | 196 ++++ tools/ocaml/libs/xc/xc_cpufeature.h | 116 +++ tools/ocaml/libs/xc/xc_cpuid.h | 285 ++++++ tools/ocaml/libs/xc/xc_e820.h | 20 + tools/ocaml/libs/xc/xc_lib.c | 1502 ++++++++++++++++++++++= ++++++ tools/ocaml/libs/xc/xc_stubs.c | 1170 ++++++++++++++++++++++ tools/ocaml/libs/xs/META.in | 4 + tools/ocaml/libs/xs/Makefile | 42 + tools/ocaml/libs/xs/queueop.ml | 73 ++ tools/ocaml/libs/xs/xs.ml | 170 ++++ tools/ocaml/libs/xs/xs.mli | 90 ++ tools/ocaml/libs/xs/xsraw.ml | 265 +++++ tools/ocaml/libs/xs/xsraw.mli | 60 ++ tools/ocaml/libs/xs/xst.ml | 61 ++ tools/ocaml/libs/xs/xst.mli | 30 + tools/ocaml/xenstored/Makefile | 54 + tools/ocaml/xenstored/config.ml | 112 ++ tools/ocaml/xenstored/connection.ml | 234 +++++ tools/ocaml/xenstored/connections.ml | 167 +++ tools/ocaml/xenstored/define.ml | 40 + tools/ocaml/xenstored/disk.ml | 157 +++ tools/ocaml/xenstored/domain.ml | 62 ++ tools/ocaml/xenstored/domains.ml | 84 ++ tools/ocaml/xenstored/event.ml | 29 + tools/ocaml/xenstored/logging.ml | 239 +++++ tools/ocaml/xenstored/parse_arg.ml | 68 ++ tools/ocaml/xenstored/perms.ml | 167 +++ tools/ocaml/xenstored/process.ml | 396 ++++++++ tools/ocaml/xenstored/quota.ml | 83 ++ tools/ocaml/xenstored/store.ml | 461 +++++++++ tools/ocaml/xenstored/symbol.ml | 76 ++ tools/ocaml/xenstored/symbol.mli | 52 + tools/ocaml/xenstored/transaction.ml | 198 ++++ tools/ocaml/xenstored/utils.ml | 107 ++ tools/ocaml/xenstored/xenstored.conf | 30 + tools/ocaml/xenstored/xenstored.ml | 404 ++++++++ tools/xenstore/Makefile | 5 - 80 files changed, 10168 insertions(+), 32 deletions(-) create mode 100644 tools/ocaml/Makefile create mode 100644 tools/ocaml/Makefile.rules create mode 100644 tools/ocaml/common.make create mode 100644 tools/ocaml/libs/eventchn/META.in create mode 100644 tools/ocaml/libs/eventchn/Makefile create mode 100644 tools/ocaml/libs/eventchn/eventchn.ml create mode 100644 tools/ocaml/libs/eventchn/eventchn.mli create mode 100644 tools/ocaml/libs/eventchn/eventchn_stubs.c create mode 100644 tools/ocaml/libs/log/META.in create mode 100644 tools/ocaml/libs/log/Makefile create mode 100644 tools/ocaml/libs/log/log.ml create mode 100644 tools/ocaml/libs/log/log.mli create mode 100644 tools/ocaml/libs/log/logs.ml create mode 100644 tools/ocaml/libs/log/logs.mli create mode 100644 tools/ocaml/libs/log/syslog.ml create mode 100644 tools/ocaml/libs/log/syslog.mli create mode 100644 tools/ocaml/libs/log/syslog_stubs.c create mode 100644 tools/ocaml/libs/mmap/META.in create mode 100644 tools/ocaml/libs/mmap/Makefile create mode 100644 tools/ocaml/libs/mmap/mmap.ml create mode 100644 tools/ocaml/libs/mmap/mmap.mli create mode 100644 tools/ocaml/libs/mmap/mmap_stubs.c create mode 100644 tools/ocaml/libs/mmap/mmap_stubs.h create mode 100644 tools/ocaml/libs/uuid/META.in create mode 100644 tools/ocaml/libs/uuid/Makefile create mode 100644 tools/ocaml/libs/uuid/uuid.ml create mode 100644 tools/ocaml/libs/uuid/uuid.mli create mode 100644 tools/ocaml/libs/xb/META.in create mode 100644 tools/ocaml/libs/xb/Makefile create mode 100644 tools/ocaml/libs/xb/op.ml create mode 100644 tools/ocaml/libs/xb/packet.ml create mode 100644 tools/ocaml/libs/xb/partial.ml create mode 100644 tools/ocaml/libs/xb/xb.ml create mode 100644 tools/ocaml/libs/xb/xb.mli create mode 100644 tools/ocaml/libs/xb/xb_stubs.c create mode 100644 tools/ocaml/libs/xb/xs_ring.ml create mode 100644 tools/ocaml/libs/xb/xs_ring_stubs.c create mode 100644 tools/ocaml/libs/xc/META.in create mode 100644 tools/ocaml/libs/xc/Makefile create mode 100644 tools/ocaml/libs/xc/xc.h create mode 100644 tools/ocaml/libs/xc/xc.ml create mode 100644 tools/ocaml/libs/xc/xc.mli create mode 100644 tools/ocaml/libs/xc/xc_cpufeature.h create mode 100644 tools/ocaml/libs/xc/xc_cpuid.h create mode 100644 tools/ocaml/libs/xc/xc_e820.h create mode 100644 tools/ocaml/libs/xc/xc_lib.c create mode 100644 tools/ocaml/libs/xc/xc_stubs.c create mode 100644 tools/ocaml/libs/xs/META.in create mode 100644 tools/ocaml/libs/xs/Makefile create mode 100644 tools/ocaml/libs/xs/queueop.ml create mode 100644 tools/ocaml/libs/xs/xs.ml create mode 100644 tools/ocaml/libs/xs/xs.mli create mode 100644 tools/ocaml/libs/xs/xsraw.ml create mode 100644 tools/ocaml/libs/xs/xsraw.mli create mode 100644 tools/ocaml/libs/xs/xst.ml create mode 100644 tools/ocaml/libs/xs/xst.mli create mode 100644 tools/ocaml/xenstored/Makefile create mode 100644 tools/ocaml/xenstored/config.ml create mode 100644 tools/ocaml/xenstored/connection.ml create mode 100644 tools/ocaml/xenstored/connections.ml create mode 100644 tools/ocaml/xenstored/define.ml create mode 100644 tools/ocaml/xenstored/disk.ml create mode 100644 tools/ocaml/xenstored/domain.ml create mode 100644 tools/ocaml/xenstored/domains.ml create mode 100644 tools/ocaml/xenstored/event.ml create mode 100644 tools/ocaml/xenstored/logging.ml create mode 100644 tools/ocaml/xenstored/parse_arg.ml create mode 100644 tools/ocaml/xenstored/perms.ml create mode 100644 tools/ocaml/xenstored/process.ml create mode 100644 tools/ocaml/xenstored/quota.ml create mode 100644 tools/ocaml/xenstored/store.ml create mode 100644 tools/ocaml/xenstored/symbol.ml create mode 100644 tools/ocaml/xenstored/symbol.mli create mode 100644 tools/ocaml/xenstored/transaction.ml create mode 100644 tools/ocaml/xenstored/utils.ml create mode 100644 tools/ocaml/xenstored/xenstored.conf create mode 100644 tools/ocaml/xenstored/xenstored.ml --------------1.7.0 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------------1.7.0--