Stefano Stabellini
2011-Sep-23 12:09 UTC
[Xen-devel] [PATCH v6 0/5] build upstream qemu and seabios by default
Hi all, this is the sixth version of the patch series to introduce upstream qemu and seabios in the xen-unstable build system. Changes to v5: - use $GIT in git-checkout.sh; - add an http mirror for seabios; - use $(LIBEXEC) to configure upstream qemu; - append a patch for libxenlight to find the upstream qemu binary under $(LIBEXEC). Changes to v4: - remove an obsolete comment; - use /bin/sh to execute git-checkout.sh rathen than /bin/bash. Changes to v3: - reduce the scope of git-checkout.sh, now it only does what the name says; calling "configure" is responsibility of the caller. As a result of this change, the build still works when the user specifies a local directory in the CONFIG_QEMU environmental variable; - use a more official qemu repository hosted on xenbits; - use a changeset as QEMU_UPSTREAM_TAG rather than a branch name. Changes to v2: - move tools/git-checkout.sh to scripts/git-checkout.sh; - use git-checkout.sh for seabios; - improve seabios integration with tools/firmware make system; - add qemu-xen-traditional, qemu-xen and seabios dir entries to .hgignore. Changes to v1: - always build upstream qemu and seabios, rather than introducing them as an option. Cheers, Stefano _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<stefano.stabellini@eu.citrix.com>
2011-Sep-23 12:11 UTC
[Xen-devel] [PATCH v6 1/5] Introduce git-checkout.sh
Introduce a script to perform git checkout on an external git tree; use git-checkout.sh in ioemu-dir-find. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> diff --git a/.hgignore b/.hgignore --- a/.hgignore +++ b/.hgignore @@ -291,7 +291,7 @@ ^tools/xm-test/lib/XmTestLib/config.py$ ^tools/xm-test/lib/XmTestReport/xmtest.py$ ^tools/xm-test/tests/.*\.test$ -^tools/ioemu-remote +^tools/ioemu-dir-remote ^tools/ioemu-dir$ ^tools/ocaml/.*/.*\.annot$ ^tools/ocaml/.*/.*\.cmx?a$ diff --git a/scripts/git-checkout.sh b/scripts/git-checkout.sh new file mode 100755 --- /dev/null +++ b/scripts/git-checkout.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +TREE=$1 +TAG=$2 +DIR=$3 + + +if test \! -d $DIR-remote; then + rm -rf $DIR-remote $DIR-remote.tmp; + mkdir $DIR-remote.tmp; rmdir $DIR-remote.tmp; + $GIT clone $TREE $DIR-remote.tmp; + if test "$TAG" ; then + cd $DIR-remote.tmp + $GIT branch -D dummy >/dev/null 2>&1 ||: + $GIT checkout -b dummy $TAG + cd .. + fi + mv $DIR-remote.tmp $DIR-remote +fi +rm -f $DIR +ln -sf $DIR-remote $DIR diff --git a/tools/Makefile b/tools/Makefile --- a/tools/Makefile +++ b/tools/Makefile @@ -70,7 +70,7 @@ clean: subdirs-clean .PHONY: distclean distclean: subdirs-distclean - rm -rf ioemu-dir ioemu-remote + rm -rf ioemu-dir ioemu-dir-remote ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ @@ -88,20 +88,8 @@ ioemu-dir-find: if test -d $(CONFIG_QEMU); then \ mkdir -p ioemu-dir; \ else \ - if [ ! -d ioemu-remote ]; then \ - rm -rf ioemu-remote ioemu-remote.tmp; \ - mkdir ioemu-remote.tmp; rmdir ioemu-remote.tmp; \ - $(GIT) clone $(CONFIG_QEMU) ioemu-remote.tmp; \ - if [ "$(QEMU_TAG)" ]; then \ - cd ioemu-remote.tmp; \ - $(GIT) branch -D dummy >/dev/null 2>&1 ||:; \ - $(GIT) checkout -b dummy $(QEMU_TAG); \ - cd ..; \ - fi; \ - mv ioemu-remote.tmp ioemu-remote; \ - fi; \ - rm -f ioemu-dir; \ - ln -sf ioemu-remote ioemu-dir; \ + export GIT=$(GIT); \ + $(XEN_ROOT)/scripts/git-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) ioemu-dir; \ fi set -e; \ $(buildmakevars2shellvars); \ @@ -112,7 +100,7 @@ ioemu-dir-find: ioemu-dir-force-update: set -ex; \ if [ "$(QEMU_TAG)" ]; then \ - cd ioemu-remote; \ + cd ioemu-dir-remote; \ $(GIT) fetch origin; \ $(GIT) reset --hard $(QEMU_TAG); \ fi _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<stefano.stabellini@eu.citrix.com>
2011-Sep-23 12:11 UTC
[Xen-devel] [PATCH v6 2/5] Rename ioemu-dir as qemu-xen-traditional-dir
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> diff -r 9d2f56b25845 .hgignore --- a/.hgignore Fri Sep 23 11:35:23 2011 +0000 +++ b/.hgignore Fri Sep 23 11:36:44 2011 +0000 @@ -291,8 +291,8 @@ ^tools/xm-test/lib/XmTestLib/config.py$ ^tools/xm-test/lib/XmTestReport/xmtest.py$ ^tools/xm-test/tests/.*\.test$ -^tools/ioemu-dir-remote -^tools/ioemu-dir$ +^tools/qemu-xen-traditional-dir-remote +^tools/qemu-xen-traditional-dir$ ^tools/ocaml/.*/.*\.annot$ ^tools/ocaml/.*/.*\.cmx?a$ ^tools/ocaml/.*/META$ diff -r 9d2f56b25845 Makefile --- a/Makefile Fri Sep 23 11:35:23 2011 +0000 +++ b/Makefile Fri Sep 23 11:36:44 2011 +0000 @@ -70,7 +70,7 @@ install-tools: $(MAKE) -C tools install ifeq ($(CONFIG_IOEMU),y) -install-tools: tools/ioemu-dir +install-tools: tools/qemu-xen-traditional-dir endif .PHONY: install-kernels @@ -78,18 +78,18 @@ install-kernels: for i in $(XKERNELS) ; do $(MAKE) $$i-install || exit 1; done .PHONY: install-stubdom -install-stubdom: tools/ioemu-dir install-tools +install-stubdom: tools/qemu-xen-traditional-dir install-tools $(MAKE) -C stubdom install ifeq (x86_64,$(XEN_TARGET_ARCH)) XEN_TARGET_ARCH=x86_32 $(MAKE) -C stubdom install-grub endif -tools/ioemu-dir: - $(MAKE) -C tools ioemu-dir-find +tools/qemu-xen-traditional-dir: + $(MAKE) -C tools qemu-xen-traditional-dir-find -.PHONY: tools/ioemu-dir-force-update -tools/ioemu-dir-force-update: - $(MAKE) -C tools ioemu-dir-force-update +.PHONY: tools/qemu-xen-traditional-dir-force-update +tools/qemu-xen-traditional-dir-force-update: + $(MAKE) -C tools qemu-xen-traditional-dir-force-update .PHONY: install-docs install-docs: diff -r 9d2f56b25845 stubdom/Makefile --- a/stubdom/Makefile Fri Sep 23 11:35:23 2011 +0000 +++ b/stubdom/Makefile Fri Sep 23 11:36:44 2011 +0000 @@ -218,15 +218,15 @@ cross-ocaml: $(OCAML_STAMPFILE) QEMU_ROOT := $(shell if [ -d "$(CONFIG_QEMU)" ]; then echo "$(CONFIG_QEMU)"; else echo .; fi) ifeq ($(QEMU_ROOT),.) -$(XEN_ROOT)/tools/ioemu-dir: - $(CROSS_MAKE) -C $(XEN_ROOT)/tools ioemu-dir-find +$(XEN_ROOT)/tools/qemu-xen-traditional-dir: + $(CROSS_MAKE) -C $(XEN_ROOT)/tools qemu-xen-traditional-dir-find -ioemu/linkfarm.stamp: $(XEN_ROOT)/tools/ioemu-dir +ioemu/linkfarm.stamp: $(XEN_ROOT)/tools/qemu-xen-traditional-dir mkdir -p ioemu set -e; \ $(buildmakevars2shellvars); \ cd ioemu; \ - src="$$XEN_ROOT/tools/ioemu-dir"; export src; \ + src="$$XEN_ROOT/tools/qemu-xen-traditional-dir"; export src; \ (cd $$src && find * -type d -print) | xargs mkdir -p; \ (cd $$src && find * ! -type l -type f $(addprefix ! -name , \ ''*.[oda1]'' ''config-*'' config.mak qemu-dm qemu-img-xen \ diff -r 9d2f56b25845 tools/Makefile --- a/tools/Makefile Fri Sep 23 11:35:23 2011 +0000 +++ b/tools/Makefile Fri Sep 23 11:36:44 2011 +0000 @@ -30,7 +30,7 @@ SUBDIRS-$(LIBXENAPI_BINDINGS) += libxen # do not recurse in to a dir we are about to delete ifneq "$(MAKECMDGOALS)" "distclean" -SUBDIRS-$(CONFIG_IOEMU) += ioemu-dir +SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-traditional-dir endif SUBDIRS-y += xenpmd @@ -70,7 +70,7 @@ clean: subdirs-clean .PHONY: distclean distclean: subdirs-distclean - rm -rf ioemu-dir ioemu-dir-remote + rm -rf qemu-xen-traditional-dir qemu-xen-traditional-dir-remote ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ @@ -83,34 +83,34 @@ ifneq ($(QEMU_ROOT),.) export QEMU_ROOT endif -ioemu-dir-find: +qemu-xen-traditional-dir-find: set -ex; \ if test -d $(CONFIG_QEMU); then \ - mkdir -p ioemu-dir; \ + mkdir -p qemu-xen-traditional-dir; \ else \ export GIT=$(GIT); \ - $(XEN_ROOT)/scripts/git-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) ioemu-dir; \ + $(XEN_ROOT)/scripts/git-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) qemu-xen-traditional-dir; \ fi set -e; \ $(buildmakevars2shellvars); \ - cd ioemu-dir; \ + cd qemu-xen-traditional-dir; \ $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS) -.PHONY: ioemu-dir-force-update -ioemu-dir-force-update: +.PHONY: qemu-xen-traditional-dir-force-update +qemu-xen-traditional-dir-force-update: set -ex; \ if [ "$(QEMU_TAG)" ]; then \ - cd ioemu-dir-remote; \ + cd qemu-xen-traditional-dir-remote; \ $(GIT) fetch origin; \ $(GIT) reset --hard $(QEMU_TAG); \ fi -subdir-all-ioemu-dir subdir-install-ioemu-dir: ioemu-dir-find +subdir-all-qemu-xen-traditional-dir subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find -subdir-clean-ioemu-dir: - set -e; if test -d ioemu-dir/.; then \ +subdir-clean-qemu-xen-traditional-dir: + set -e; if test -d qemu-xen-traditional-dir/.; then \ $(buildmakevars2shellvars); \ - $(MAKE) -C ioemu-dir clean; \ + $(MAKE) -C qemu-xen-traditional-dir clean; \ fi subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<stefano.stabellini@eu.citrix.com>
2011-Sep-23 12:11 UTC
[Xen-devel] [PATCH v6 3/5] Clone and build upstream Qemu by default
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> diff -r 5553e17faa80 .hgignore --- a/.hgignore Fri Sep 23 11:36:44 2011 +0000 +++ b/.hgignore Fri Sep 23 11:37:08 2011 +0000 @@ -293,6 +293,8 @@ ^tools/xm-test/tests/.*\.test$ ^tools/qemu-xen-traditional-dir-remote ^tools/qemu-xen-traditional-dir$ +^tools/qemu-xen-dir-remote +^tools/qemu-xen-dir$ ^tools/ocaml/.*/.*\.annot$ ^tools/ocaml/.*/.*\.cmx?a$ ^tools/ocaml/.*/META$ diff -r 5553e17faa80 Config.mk --- a/Config.mk Fri Sep 23 11:36:44 2011 +0000 +++ b/Config.mk Fri Sep 23 11:37:08 2011 +0000 @@ -192,6 +192,13 @@ else QEMU_REMOTE=git://xenbits.xensource.com/qemu-xen-unstable.git endif +ifeq ($(GIT_HTTP),y) +QEMU_UPSTREAM_URL ?= http://xenbits.xensource.com/git-http/qemu-upstream-unstable.git +else +QEMU_UPSTREAM_URL ?= git://xenbits.xensource.com/qemu-upstream-unstable.git +endif +QEMU_UPSTREAM_TAG ?= 6dd84c71dff047f9e492d67e7c99928d09202760 + # Specify which qemu-dm to use. This may be `ioemu'' to use the old # Mercurial in-tree version, or a local directory, or a git URL. # CONFIG_QEMU ?= `pwd`/$(XEN_ROOT)/../qemu-xen.git diff -r 5553e17faa80 Makefile --- a/Makefile Fri Sep 23 11:36:44 2011 +0000 +++ b/Makefile Fri Sep 23 11:37:08 2011 +0000 @@ -70,7 +70,7 @@ install-tools: $(MAKE) -C tools install ifeq ($(CONFIG_IOEMU),y) -install-tools: tools/qemu-xen-traditional-dir +install-tools: tools/qemu-xen-traditional-dir tools/qemu-xen-dir endif .PHONY: install-kernels @@ -91,6 +91,9 @@ tools/qemu-xen-traditional-dir: tools/qemu-xen-traditional-dir-force-update: $(MAKE) -C tools qemu-xen-traditional-dir-force-update +tools/qemu-xen-dir: + $(MAKE) -C tools qemu-xen-dir-find + .PHONY: install-docs install-docs: sh ./docs/check_pkgs && $(MAKE) -C docs install || true diff -r 5553e17faa80 tools/Makefile --- a/tools/Makefile Fri Sep 23 11:36:44 2011 +0000 +++ b/tools/Makefile Fri Sep 23 11:37:08 2011 +0000 @@ -31,6 +31,7 @@ SUBDIRS-$(LIBXENAPI_BINDINGS) += libxen # do not recurse in to a dir we are about to delete ifneq "$(MAKECMDGOALS)" "distclean" SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-traditional-dir +SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-dir endif SUBDIRS-y += xenpmd @@ -71,6 +72,7 @@ clean: subdirs-clean .PHONY: distclean distclean: subdirs-distclean rm -rf qemu-xen-traditional-dir qemu-xen-traditional-dir-remote + rm -rf qemu-xen-dir qemu-xen-dir-remote ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ @@ -96,6 +98,25 @@ qemu-xen-traditional-dir-find: cd qemu-xen-traditional-dir; \ $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS) +qemu-xen-dir-find: + if test -d $(QEMU_UPSTREAM_URL) ; then \ + ln -sf $(QEMU_UPSTREAM_URL) qemu-xen-dir; \ + else \ + export GIT=$(GIT); \ + $(XEN_ROOT)/scripts/git-checkout.sh $(QEMU_UPSTREAM_URL) $(QEMU_UPSTREAM_TAG) qemu-xen-dir ; \ + fi + cd qemu-xen-dir; \ + ./configure --enable-xen --target-list=i386-softmmu \ + --source-path=$$ROOT \ + --extra-cflags="-I$(XEN_ROOT)/tools/include \ + -I$(XEN_ROOT)/tools/libxc \ + -I$(XEN_ROOT)/tools/xenstore" \ + --extra-ldflags="-L$(XEN_ROOT)/tools/libxc \ + -L$(XEN_ROOT)/tools/libxenstore" \ + --bindir=$(LIBEXEC) \ + --disable-kvm \ + $(IOEMU_CONFIGURE_CROSS) + .PHONY: qemu-xen-traditional-dir-force-update qemu-xen-traditional-dir-force-update: set -ex; \ @@ -113,6 +134,14 @@ subdir-clean-qemu-xen-traditional-dir: $(MAKE) -C qemu-xen-traditional-dir clean; \ fi +subdir-all-qemu-xen-dir subdir-install-qemu-xen-dir: qemu-xen-dir-find + +subdir-clean-qemu-xen-dir: + set -e; if test -d qemu-xen-dir/.; then \ + $(buildmakevars2shellvars); \ + $(MAKE) -C qemu-xen-dir clean; \ + fi + subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony $(MAKE) -C debugger/gdbsx clean _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<stefano.stabellini@eu.citrix.com>
2011-Sep-23 12:11 UTC
[Xen-devel] [PATCH v6 4/5] Clone and build Seabios by default
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
diff -r 294b63f68602 .hgignore
--- a/.hgignore Fri Sep 23 11:37:09 2011 +0000
+++ b/.hgignore Fri Sep 23 11:51:06 2011 +0000
@@ -295,6 +295,8 @@
^tools/qemu-xen-traditional-dir$
^tools/qemu-xen-dir-remote
^tools/qemu-xen-dir$
+^tools/tools/firmware/seabios-dir-remote
+^tools/tools/firmware/seabios-dir$
^tools/ocaml/.*/.*\.annot$
^tools/ocaml/.*/.*\.cmx?a$
^tools/ocaml/.*/META$
diff -r 294b63f68602 Config.mk
--- a/Config.mk Fri Sep 23 11:37:09 2011 +0000
+++ b/Config.mk Fri Sep 23 11:51:06 2011 +0000
@@ -194,10 +194,13 @@ endif
ifeq ($(GIT_HTTP),y)
QEMU_UPSTREAM_URL ?=
http://xenbits.xensource.com/git-http/qemu-upstream-unstable.git
+SEABIOS_UPSTREAM_URL ?= http://git.qemu.org/git/seabios.git
else
QEMU_UPSTREAM_URL ?= git://xenbits.xensource.com/qemu-upstream-unstable.git
+SEABIOS_UPSTREAM_URL ?= git://git.qemu.org/seabios.git
endif
QEMU_UPSTREAM_TAG ?= 6dd84c71dff047f9e492d67e7c99928d09202760
+SEABIOS_UPSTREAM_TAG ?= 7fc039e9c262b4199fab497f3e12f4e425c37560
# Specify which qemu-dm to use. This may be `ioemu'' to use the old
# Mercurial in-tree version, or a local directory, or a git URL.
@@ -211,15 +214,6 @@ QEMU_TAG ?= cd776ee9408ff127f934a707c1a3
# Short answer -- do not enable this unless you know what you are
# doing and are prepared for some pain.
-# SeaBIOS integration is a work in progress. Before enabling this
-# option you must clone git://git.qemu.org/seabios.git/, possibly add
-# some development patches and then build it yourself before pointing
-# this variable to it (using an absolute path).
-#
-# Note that using SeaBIOS requires the use the upstream qemu as the
-# device model.
-SEABIOS_DIR ?=
-
# Optional components
XENSTAT_XENTOP ?= y
VTPM_TOOLS ?= n
diff -r 294b63f68602 tools/firmware/Makefile
--- a/tools/firmware/Makefile Fri Sep 23 11:37:09 2011 +0000
+++ b/tools/firmware/Makefile Fri Sep 23 11:51:06 2011 +0000
@@ -6,13 +6,18 @@ TARGET := hvmloader/hvmloader
INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
SUBDIRS :+SUBDIRS += seabios-dir
SUBDIRS += rombios
SUBDIRS += vgabios
SUBDIRS += etherboot
SUBDIRS += hvmloader
+seabios-dir:
+ GIT=$(GIT) $(XEN_ROOT)/scripts/git-checkout.sh $(SEABIOS_UPSTREAM_URL)
$(SEABIOS_UPSTREAM_TAG) seabios-dir
+ cp seabios-config seabios-dir/.config;
+
.PHONY: all
-all:
+all: seabios-dir
@set -e; if [ $$((`( bcc -v 2>&1 | grep version || echo 0.0.0 ) | cut
-d'' '' -f 3 | awk -F. ''{ printf
"0x%02x%02x%02x", $$1, $$2, $$3}''`)) -lt $$((0x00100e)) ] ;
then \
echo
"===========================================================================";
\
echo "Require dev86 rpm or bin86 & bcc debs version >= 0.16.14 to
build firmware!"; \
@@ -35,4 +40,7 @@ clean: subdirs-clean
distclean: subdirs-distclean
subdir-distclean-etherboot: .phony
- $(MAKE) -C etherboot distclean
\ No newline at end of file
+ $(MAKE) -C etherboot distclean
+
+subdir-distclean-seabios-dir: .phony
+ rm -rf seabios-dir seabios-dir-remote
diff -r 294b63f68602 tools/firmware/hvmloader/Makefile
--- a/tools/firmware/hvmloader/Makefile Fri Sep 23 11:37:09 2011 +0000
+++ b/tools/firmware/hvmloader/Makefile Fri Sep 23 11:51:06 2011 +0000
@@ -44,6 +44,7 @@ CFLAGS += -DENABLE_ROMBIOS
ROMBIOS_ROM := $(ROMBIOS_DIR)/BIOS-bochs-latest
endif
+SEABIOS_DIR := ../seabios-dir
ifneq ($(SEABIOS_DIR),)
OBJS += seabios.o
CFLAGS += -DENABLE_SEABIOS
diff -r 294b63f68602 tools/firmware/seabios-config
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/firmware/seabios-config Fri Sep 23 11:51:06 2011 +0000
@@ -0,0 +1,73 @@
+#
+# Automatically generated make config: don''t edit
+# SeaBIOS Configuration
+# Wed Sep 7 13:03:21 2011
+#
+
+#
+# General Features
+#
+# CONFIG_COREBOOT is not set
+CONFIG_XEN=y
+CONFIG_THREADS=y
+# CONFIG_THREAD_OPTIONROMS is not set
+CONFIG_RELOCATE_INIT=y
+CONFIG_BOOTMENU=y
+# CONFIG_BOOTSPLASH is not set
+CONFIG_BOOTORDER=y
+
+#
+# Hardware support
+#
+CONFIG_ATA=y
+CONFIG_ATA_DMA=y
+CONFIG_ATA_PIO32=y
+CONFIG_AHCI=y
+CONFIG_VIRTIO_BLK=y
+CONFIG_FLOPPY=y
+CONFIG_PS2PORT=y
+CONFIG_USB=y
+CONFIG_USB_UHCI=y
+CONFIG_USB_OHCI=y
+CONFIG_USB_EHCI=y
+CONFIG_USB_MSC=y
+CONFIG_USB_HUB=y
+CONFIG_USB_KEYBOARD=y
+CONFIG_USB_MOUSE=y
+CONFIG_SERIAL=y
+CONFIG_LPT=y
+# CONFIG_USE_SMM is not set
+CONFIG_MTRR_INIT=y
+
+#
+# BIOS interfaces
+#
+CONFIG_DRIVES=y
+CONFIG_CDROM_BOOT=y
+CONFIG_CDROM_EMU=y
+CONFIG_PCIBIOS=y
+CONFIG_APMBIOS=y
+CONFIG_PNPBIOS=y
+CONFIG_OPTIONROMS=y
+# CONFIG_OPTIONROMS_DEPLOYED is not set
+CONFIG_PMM=y
+CONFIG_BOOT=y
+CONFIG_KEYBOARD=y
+CONFIG_KBD_CALL_INT15_4F=y
+CONFIG_MOUSE=y
+CONFIG_S3_RESUME=y
+# CONFIG_DISABLE_A20 is not set
+
+#
+# BIOS Tables
+#
+CONFIG_PIRTABLE=y
+CONFIG_MPTABLE=y
+CONFIG_SMBIOS=y
+CONFIG_ACPI=y
+
+#
+# Debugging
+#
+CONFIG_DEBUG_LEVEL=1
+# CONFIG_DEBUG_SERIAL is not set
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
<stefano.stabellini@eu.citrix.com>
2011-Sep-23 12:11 UTC
[Xen-devel] [PATCH v6 5/5] libxl: use new qemu at the location where xen-unstable installs it
From: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
diff -r 75f27929ad92 tools/libxl/libxl_dm.c
--- a/tools/libxl/libxl_dm.c Fri Sep 23 11:22:23 2011 +0000
+++ b/tools/libxl/libxl_dm.c Fri Sep 23 11:22:39 2011 +0000
@@ -55,7 +55,7 @@ const char *libxl__domain_device_model(l
dm = libxl__abs_path(gc, "qemu-dm",
libxl_libexec_path());
break;
case LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN:
- dm = libxl__strdup(gc, "/usr/bin/qemu");
+ dm = libxl__abs_path(gc, "qemu", libxl_libexec_path());
break;
default:
LIBXL__LOG(ctx, LIBXL__LOG_ERROR,
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Keir Fraser
2011-Sep-26 16:29 UTC
[Xen-devel] Re: [PATCH v6 0/5] build upstream qemu and seabios by default
On 23/09/2011 05:09, "Stefano Stabellini" <Stefano.Stabellini@eu.citrix.com> wrote:> Hi all, > this is the sixth version of the patch series to introduce upstream qemu > and seabios in the xen-unstable build system. >I''m happy with this by the way. Do you want me to check it in again? Perhaps better to give it a run through the automated tests first, and then have IanJ push it on success? -- Keir> Changes to v5: > > - use $GIT in git-checkout.sh; > > - add an http mirror for seabios; > > - use $(LIBEXEC) to configure upstream qemu; > > - append a patch for libxenlight to find the upstream qemu binary under > $(LIBEXEC). > > > Changes to v4: > > - remove an obsolete comment; > > - use /bin/sh to execute git-checkout.sh rathen than /bin/bash. > > > Changes to v3: > > - reduce the scope of git-checkout.sh, now it only does what the name > says; calling "configure" is responsibility of the caller. As a result > of this change, the build still works when the user specifies a local > directory in the CONFIG_QEMU environmental variable; > > - use a more official qemu repository hosted on xenbits; > > - use a changeset as QEMU_UPSTREAM_TAG rather than a branch name. > > > > Changes to v2: > > - move tools/git-checkout.sh to scripts/git-checkout.sh; > > - use git-checkout.sh for seabios; > > - improve seabios integration with tools/firmware make system; > > - add qemu-xen-traditional, qemu-xen and seabios dir entries to > .hgignore. > > > > Changes to v1: > > - always build upstream qemu and seabios, rather than introducing them > as an option. > > > Cheers, > > Stefano_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Ian Jackson
2011-Sep-26 16:49 UTC
[Xen-devel] Re: [PATCH v6 0/5] build upstream qemu and seabios by default
Keir Fraser writes ("[Xen-devel] Re: [PATCH v6 0/5] build upstream qemu and
seabios by default"):> I''m happy with this by the way. Do you want me to check it in
again? Perhaps
> better to give it a run through the automated tests first, and then have
> IanJ push it on success?
Noted, thanks for the ack. I will review and test this whole series
and apply it if I''m happy.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Ian Jackson
2011-Sep-28 15:58 UTC
Re: [Xen-devel] [PATCH v6 1/5] Introduce git-checkout.sh
stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 1/5]
Introduce git-checkout.sh"):> Introduce a script to perform git checkout on an external git tree; use
> git-checkout.sh in ioemu-dir-find.
...> +#!/bin/sh
> +
> +TREE=$1
> +TAG=$2
> +DIR=$3
Missing
- set -e
- argument count check
> +if test \! -d $DIR-remote; then
> + rm -rf $DIR-remote $DIR-remote.tmp;
Spurious semicolons.
> distclean: subdirs-distclean
> - rm -rf ioemu-dir ioemu-remote
> + rm -rf ioemu-dir ioemu-dir-remote
Would it be too much to ask you not to rename this directory ?
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Ian Jackson
2011-Sep-28 15:58 UTC
Re: [Xen-devel] [PATCH v6 2/5] Rename ioemu-dir as qemu-xen-traditional-dir
stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 2/5] Rename
ioemu-dir as qemu-xen-traditional-dir"):> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Why ? I''m generally not in favour of renaming things in build trees
unless essential. Particularly, this whole machinery is very fragile
and this will break existing working trees.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Ian Campbell
2011-Sep-28 16:00 UTC
Re: [Xen-devel] [PATCH v6 2/5] Rename ioemu-dir as qemu-xen-traditional-dir
On Wed, 2011-09-28 at 16:58 +0100, Ian Jackson wrote:> stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 2/5] Rename ioemu-dir as qemu-xen-traditional-dir"): > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > > Why ? I''m generally not in favour of renaming things in build trees > unless essential. Particularly, this whole machinery is very fragile > and this will break existing working trees.I suggested this just to be consistent in our terminology throughout the guest config files, libxl, the build etc. It''s not a big deal though. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Ian Jackson
2011-Sep-28 16:00 UTC
Re: [Xen-devel] [PATCH v6 3/5] Clone and build upstream Qemu by default
stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 3/5] Clone
and build upstream Qemu by default"):> +qemu-xen-dir-find:
> + if test -d $(QEMU_UPSTREAM_URL) ; then \
> + ln -sf $(QEMU_UPSTREAM_URL) qemu-xen-dir; \
> + else \
> + export GIT=$(GIT); \
> + $(XEN_ROOT)/scripts/git-checkout.sh $(QEMU_UPSTREAM_URL)
$(QEMU_UPSTREAM_TAG) qemu-xen-dir ; \
> + fi
> + cd qemu-xen-dir; \
> + ./configure --enable-xen --target-list=i386-softmmu \
> + --source-path=$$ROOT \
> + --extra-cflags="-I$(XEN_ROOT)/tools/include \
> + -I$(XEN_ROOT)/tools/libxc \
> + -I$(XEN_ROOT)/tools/xenstore" \
> + --extra-ldflags="-L$(XEN_ROOT)/tools/libxc \
> + -L$(XEN_ROOT)/tools/libxenstore" \
> + --bindir=$(LIBEXEC) \
> + --disable-kvm \
> + $(IOEMU_CONFIGURE_CROSS)
This looks OK in principle although of course I would like to test it.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Ian Jackson
2011-Sep-28 16:01 UTC
Re: [Xen-devel] [PATCH v6 4/5] Clone and build Seabios by default
stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 4/5] Clone
and build Seabios by default"):> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Likewise, this one is OK I think provided we fix up my comments on
earlier patches, and it tests OK (which I will do).
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Stefano Stabellini
2011-Sep-29 11:10 UTC
Re: [Xen-devel] [PATCH v6 1/5] Introduce git-checkout.sh
On Wed, 28 Sep 2011, Ian Jackson wrote:> stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 1/5] Introduce git-checkout.sh"): > > Introduce a script to perform git checkout on an external git tree; use > > git-checkout.sh in ioemu-dir-find. > ... > > +#!/bin/sh > > + > > +TREE=$1 > > +TAG=$2 > > +DIR=$3 > > Missing > - set -e > - argument count checkYes, I''ll add those.> > +if test \! -d $DIR-remote; then > > + rm -rf $DIR-remote $DIR-remote.tmp; > > Spurious semicolons.OK.> > distclean: subdirs-distclean > > - rm -rf ioemu-dir ioemu-remote > > + rm -rf ioemu-dir ioemu-dir-remote > > Would it be too much to ask you not to rename this directory ?Honestly I think that keeping the old name is bad: having two qemu trees cloned by xen-unstable is already confusing enough for both to users and developers, the very least we can do is naming the two trees meaningfully. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Ian Jackson
2011-Sep-29 13:57 UTC
Re: [Xen-devel] [PATCH v6 1/5] Introduce git-checkout.sh
Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v6 1/5] Introduce
git-checkout.sh"):> On Wed, 28 Sep 2011, Ian Jackson wrote:
> > Would it be too much to ask you not to rename this directory ?
>
> Honestly I think that keeping the old name is bad: having two qemu trees
> cloned by xen-unstable is already confusing enough for both to users and
> developers, the very least we can do is naming the two trees meaningfully.
I guess I''m in a minority on this one.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel