Various fixes to the build system to compile as a stubdomain.
(Most of these changes were originally written by Samuel for an older
version of qemu-remote.)
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
+++ /dev/null
-include ../xen-config.mak
include ../xen-hooks.mak
OBJS += block-vbd.o
-OBJS += tpm_tis.o
-QEMU_STUBDOM= libqemu.a
+QEMU_STUBDOM= qemu.a
-PROGS=$(QEMU_STUBDOM)
+PROGS=$(QEMU_STUBDOM) libqemu.a
+TOOLS=
$(QEMU_STUBDOM): $(OBJS)
$(AR) rcs $@ $^
+#ifdef __MINIOS__
+#define CONFIG_STUBDOM
+#define NO_AIO 1
+#define NO_UNIX_SOCKETS 1
+#endif
+
extern char domain_name[64];
extern int domid;
#include "xenctrl.h"
#include "xs.h"
+#ifndef CONFIG_STUBDOM
#include "blktaplib.h"
+#endif
#ifndef XEN_CONFIG_HOST_BOOL_WAS_DEFINED
# undef bool
void xenstore_parse_domain_config(int domid);
void xenstore_read_vncpasswd(int domid, char *pwbuf, size_t pwbuflen);
+#ifdef CONFIG_STUBDOM
+extern struct BlockDriver bdrv_vbd;
+#endif
struct CharDriverState;
void xenstore_store_serial_port_info(int i, struct CharDriverState *chr,
const char *devname);
XEN_ROOT ?= $(QEMU_ROOT)/../xen-unstable.hg
include $(XEN_ROOT)/tools/Rules.mk
+ifdef CONFIG_STUBDOM
+TARGET_DIRS=i386-stubdom
+else
TARGET_DIRS=i386-dm
+endif
-include $(QEMU_ROOT)/xen-hooks.mak
CPPFLAGS+= -I$(XEN_ROOT)/tools/libxc
CPPFLAGS+= -I$(XEN_ROOT)/tools/xenstore
CPPFLAGS+= -I$(XEN_ROOT)/tools/include
-CPPFLAGS+= -I$(XEN_ROOT)/tools/blktap/lib
SSE2 := $(call cc-option,-msse2,)
ifeq ($(SSE2),-msse2)
LIBS += -L$(XEN_ROOT)/tools/libxc -lxenctrl -lxenguest
LIBS += -L$(XEN_ROOT)/tools/xenstore -lxenstore
-LIBS += -L$(XEN_ROOT)/tools/blktap/lib -lblktap
LDFLAGS := $(CFLAGS) $(LDFLAGS)
OBJS += xenfb.o
OBJS += xen_console.o
OBJS += xen_machine_fv.o
-OBJS += xen_blktap.o
OBJS += exec-dm.o
OBJS += pci_emulation.o
+
+ifdef CONFIG_STUBDOM
+CPPFLAGS += $(TARGET_CPPFLAGS)
+CONFIG_SDL=
+CONFIG_AUDIO=
+OBJS += xenfbfront.o
+else
+CPPFLAGS+= -I$(XEN_ROOT)/tools/blktap/lib
+LIBS += -L$(XEN_ROOT)/tools/blktap/lib -lblktap
+OBJS += xen_blktap.o
OBJS += tpm_tis.o
+endif
ifdef CONFIG_STUBDOM
CONFIG_PASSTHROUGH=1
./configure --disable-gfx-check --disable-gcc-check --disable-curses --disable-slirp "$@" --prefix=/usr
-target=i386-dm
+if [ -n "$CONFIG_STUBDOM" ]
+then
+ target=i386-stubdom
+ ln -sf ../i386-dm/hookslib.mak $target/
+ (cd $target ; ln -sf ../i386-dm/*.[ch] .)
+else
+ target=i386-dm
+fi
if [ "x$XEN_ROOT" != x ]; then
echo "XEN_ROOT=$XEN_ROOT" >>config-host.mak