+AUTOMAKE_OPTIONS = foreign
+HAVE_XEN = @XEN@
+HAVE_DEVICE_MAPPER = @DEVICE_MAPPER@
+HAVE_LINUX_CDROM = @LINUX_CDROM@
+HAVE_XMLM = @OCAML_PKG_xmlm@
+HAVE_TYPECONV = @OCAML_PKG_type_conv@
+
.PHONY: all
all:
$(MAKE) -C uuid
- $(MAKE) -C camldm
$(MAKE) -C stdext
$(MAKE) -C log
$(MAKE) -C stunnel
$(MAKE) -C pciutil
- $(MAKE) -C cdrom
- $(MAKE) -C xml-light2
- $(MAKE) -C rss
- $(MAKE) -C rpc-light
$(MAKE) -C http-svr
$(MAKE) -C close-and-exec
$(MAKE) -C sexpr
+ifeq ($(HAVE_TYPECONV),type-conv)
+ $(MAKE) -C rpc-light
+endif
+ifeq ($(HAVE_XMLM),xmlm)
+ $(MAKE) -C xml-light2
+ $(MAKE) -C rss
+endif
+ifeq ($(HAVE_LINUX_CDROM),1)
+ $(MAKE) -C cdrom
+endif
+ifeq ($(HAVE_DEVICE_MAPPER),1)
+ $(MAKE) -C camldm
+endif
.PHONY: allxen
allxen:
+ifeq ($(HAVE_XEN),1)
$(MAKE) -C mmap
$(MAKE) -C xc
$(MAKE) -C xb
$(MAKE) -C xs
$(MAKE) -C xsrpc
$(MAKE) -C eventchn
+endif
install:
$(MAKE) -C uuid install
- $(MAKE) -C camldm install
$(MAKE) -C stdext install
$(MAKE) -C log install
$(MAKE) -C stunnel install
$(MAKE) -C pciutil install
- $(MAKE) -C cdrom install
- $(MAKE) -C xml-light2 install
- $(MAKE) -C rss install
- $(MAKE) -C rpc-light install
$(MAKE) -C http-svr install
$(MAKE) -C close-and-exec install
$(MAKE) -C sexpr install
+ifeq ($(HAVE_TYPECONV),type-conv)
+ $(MAKE) -C rpc-light install
+endif
+ifeq ($(HAVE_XMLM),xmlm)
+ $(MAKE) -C xml-light2 install
+ $(MAKE) -C rss install
+endif
+ifeq ($(HAVE_LINUX_CDROM),1)
+ $(MAKE) -C cdrom install
+endif
+ifeq ($(HAVE_DEVICE_MAPPER),1)
+ $(MAKE) -C camldm install
+endif
installxen:
+ifeq ($(HAVE_XEN),1)
$(MAKE) -C mmap install
$(MAKE) -C xc install
$(MAKE) -C xb install
$(MAKE) -C xs install
$(MAKE) -C xsrpc install
$(MAKE) -C eventchn install
+endif
uninstall:
$(MAKE) -C uuid uninstall
- $(MAKE) -C camldm uninstall
$(MAKE) -C stdext uninstall
$(MAKE) -C log uninstall
$(MAKE) -C stunnel uninstall
$(MAKE) -C pciutil uninstall
- $(MAKE) -C cdrom uninstall
- $(MAKE) -C xml-light2 uninstall
- $(MAKE) -C rss uninstall
- $(MAKE) -C rpc-light uninstall
$(MAKE) -C http-svr uninstall
$(MAKE) -C close-and-exec uninstall
$(MAKE) -C sexpr uninstall
+ifeq ($(HAVE_TYPECONV),type-conv)
+ $(MAKE) -C rpc-light uninstall
+endif
+ifeq ($(HAVE_XMLM),xmlm)
+ $(MAKE) -C xml-light2 uninstall
+ $(MAKE) -C rss uninstall
+endif
+ifeq ($(HAVE_LINUX_CDROM),1)
+ $(MAKE) -C cdrom uninstall
+endif
+ifeq ($(HAVE_DEVICE_MAPPER),1)
+ $(MAKE) -C camldm uninstall
+endif
uninstallxen:
+ifeq ($(HAVE_XEN),1)
$(MAKE) -C eventchn uninstall
$(MAKE) -C xsrpc uninstall
$(MAKE) -C xs uninstall
$(MAKE) -C xb uninstall
$(MAKE) -C xc uninstall
$(MAKE) -C mmap uninstall
+endif
bins:
$(MAKE) -C pciutil bins
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
-AC_PREREQ([2.63])
+AC_PREREQ([2.59])
AC_INIT([xen-api-libs], [0.1], [xen-api@lists.xensource.com])
AC_CONFIG_SRCDIR([])
-AC_CONFIG_HEADERS([stdext/config.h])
+AC_CONFIG_HEADERS([include/config.h])
AC_CONFIG_AUX_DIR(./mk)
AC_CANONICAL_SYSTEM
# Checks for header files.
AC_CHECK_HEADERS([string.h sys/param.h])
+AC_CHECK_HEADERS([xen/xen.h],[XEN=1],[XEN=0])
+AC_CHECK_HEADERS([libdevmapper.h], [DEVICE_MAPPER=1], [DEVICE_MAPPER=0])
+AC_CHECK_HEADERS([linux/cdrom.h], [LINUX_CDROM=1], [LINUX_CDROM=0])
# Checks for typedefs, structures, and compiler characteristics.
+AC_CHECK_DECLS([XS_RESTRICT],[],[],[
+[
+#include <errno.h>
+#include <xenctrl.h>
+#include <xen/io/xs_wire.h>
+]])
# Checks for library functions.
AC_CHECK_FUNCS([realpath])
AC_MSG_ERROR([You must install OCaml findlib (the ocamlfind command)])
fi
+AC_CHECK_OCAML_PKG([xmlm])
+AC_CHECK_OCAML_PKG([type-conv])
+
AC_CONFIG_FILES([Makefile])
+AC_SUBST([XEN])
+AC_SUBST([DEVICE_MAPPER])
+AC_SUBST([LINUX_CDROM])
+AC_SUBST([OCAML_PKG_xmlm])
+AC_SUBST([OCAML_PKG_type_conv])
AC_OUTPUT