From 1f44053686221af63cca7be601d74c835777d89b Mon Sep 17 00:00:00 2001 From: Matthew Fioravante Date: Fri, 18 Jan 2013 10:55:47 +0000 Subject: stubdom: Add autoconf Stub domains now use autoconf to build. This configure script can enable or disable specific domains and also specify custom download locations for stubdom library packages. See ./configure --help for details. C and Caml are disabled by default. vtpm-stubdom is conditional on the presense of cmake. Rename vtpmmgrdom to vtpmmgr-stubdom Also update .*ignore Signed-off-by: Matthew Fioravante Acked-by: Ian Campbell Committed-by: Ian Campbell --- stubdom/configure.ac | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 stubdom/configure.ac (limited to 'stubdom/configure.ac') diff --git a/stubdom/configure.ac b/stubdom/configure.ac new file mode 100644 index 0000000000..2b7b2751d8 --- /dev/null +++ b/stubdom/configure.ac @@ -0,0 +1,61 @@ +# -*- Autoconf -*- +# Process this file with autoconf to produce a configure script. + +AC_PREREQ([2.67]) +AC_INIT([Xen Hypervisor Stub Domains], m4_esyscmd([../version.sh ../xen/Makefile]), + [xen-devel@lists.xen.org], [xen], [http://www.xen.org/]) +AC_CONFIG_SRCDIR([../extras/mini-os/kernel.c]) +AC_CONFIG_FILES([../config/Stubdom.mk]) +AC_PREFIX_DEFAULT([/usr]) +AC_CONFIG_AUX_DIR([../]) + +# M4 Macro includes +m4_include([../m4/stubdom.m4]) +m4_include([../m4/features.m4]) +m4_include([../m4/path_or_fail.m4]) +m4_include([../m4/depends.m4]) + +# Enable/disable stub domains +AX_STUBDOM_DEFAULT_ENABLE([ioemu-stubdom], [ioemu]) +AX_STUBDOM_DEFAULT_DISABLE([c-stubdom], [c]) +AX_STUBDOM_DEFAULT_DISABLE([caml-stubdom], [caml]) +AX_STUBDOM_DEFAULT_ENABLE([pv-grub], [grub]) +AX_STUBDOM_DEFAULT_ENABLE([xenstore-stubdom], [xenstore]) +AX_STUBDOM_CONDITIONAL([vtpm-stubdom], [vtpm]) +AX_STUBDOM_CONDITIONAL([vtpmmgr-stubdom], [vtpmmgr]) + +AX_ARG_DEFAULT_ENABLE([debug], [Disable debug build of stubdom]) +AX_ARG_DEFAULT_ENABLE([extfiles], [Use xen extfiles repository for libraries]) + +AC_ARG_VAR([CMAKE], [Path to the cmake program]) +AC_ARG_VAR([WGET], [Path to wget program]) + +# Checks for programs. +AC_PROG_CC +AC_PROG_MAKE_SET +AC_PROG_INSTALL +AX_PATH_PROG_OR_FAIL([WGET], [wget]) + +# Checks for programs that depend on a feature +AX_DEPENDS_PATH_PROG([vtpm], [CMAKE], [cmake]) + +# Stubdom libraries version and url setup +AX_STUBDOM_LIB([ZLIB], [zlib], [1.2.3], [http://www.zlib.net]) +AX_STUBDOM_LIB([LIBPCI], [libpci], [2.2.9], [http://www.kernel.org/pub/software/utils/pciutils]) +AX_STUBDOM_LIB([NEWLIB], [newlib], [1.16.0], [ftp://sources.redhat.com/pub/newlib]) +AX_STUBDOM_LIB([LWIP], [lwip], [1.3.0], [http://download.savannah.gnu.org/releases/lwip]) +AX_STUBDOM_LIB([GRUB], [grub], [0.97], [http://alpha.gnu.org/gnu/grub]) +AX_STUBDOM_LIB_NOEXT([OCAML], [ocaml], [3.11.0], [http://caml.inria.fr/pub/distrib/ocaml-3.11]) +AX_STUBDOM_LIB([GMP], [libgmp], [4.3.2], [ftp://ftp.gmplib.org/pub/gmp-4.3.2]) +AX_STUBDOM_LIB([POLARSSL], [polarssl], [1.1.4], [http://polarssl.org/code/releases]) +AX_STUBDOM_LIB([TPMEMU], [berlios tpm emulator], [0.7.4], [http://download.berlios.de/tpm-emulator]) + +#These stubdoms should be enabled if the dependent one is +AX_STUBDOM_AUTO_DEPENDS([vtpmmgr], [vtpm]) + +#Conditionally enable these stubdoms based on the presense of dependencies +AX_STUBDOM_CONDITIONAL_FINISH([vtpm-stubdom], [vtpm]) +AX_STUBDOM_CONDITIONAL_FINISH([vtpmmgr-stubdom], [vtpmmgr]) + +AX_STUBDOM_FINISH +AC_OUTPUT() -- cgit v1.2.3