* [PATCH v2] tools: allow user to specify a system seabios binary
@ 2013-08-30 10:22 Fabio Fantoni
2013-09-04 13:34 ` Ian Campbell
0 siblings, 1 reply; 5+ messages in thread
From: Fabio Fantoni @ 2013-08-30 10:22 UTC (permalink / raw)
To: xen-devel
Cc: George.Dunlap, Fabio Fantoni, Ian.Jackson, Ian.Campbell,
Stefano.Stabellini
If this option is given don't bother building seabios ourselves.
Likely to be handy for distros who have an existing seabios
package which they want to reuse.
Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
---
config/Tools.mk.in | 2 ++
tools/configure | 28 ++++++++++++++++++++++++++++
tools/configure.ac | 16 ++++++++++++++++
tools/firmware/Makefile | 4 +++-
tools/firmware/hvmloader/Makefile | 6 +++++-
5 files changed, 54 insertions(+), 2 deletions(-)
diff --git a/config/Tools.mk.in b/config/Tools.mk.in
index e388e42..eeca36b 100644
--- a/config/Tools.mk.in
+++ b/config/Tools.mk.in
@@ -23,6 +23,7 @@ LD86 := @LD86@
BCC := @BCC@
IASL := @IASL@
FETCHER := @FETCHER@
+SEABIOS_PATH := @seabios_path@
# Extra folder for libs/includes
PREPEND_INCLUDES := @PREPEND_INCLUDES@
@@ -52,6 +53,7 @@ CONFIG_ROMBIOS := @rombios@
CONFIG_SEABIOS := @seabios@
CONFIG_QEMU_TRAD := @qemu_traditional@
CONFIG_QEMU_XEN := @qemu_xen@
+CONFIG_SEABIOS_COMP := @seabios_compile@
CONFIG_XEND := @xend@
CONFIG_BLKTAP1 := @blktap1@
diff --git a/tools/configure b/tools/configure
index 4be39fc..0da48f4 100755
--- a/tools/configure
+++ b/tools/configure
@@ -654,6 +654,8 @@ APPEND_LIB
APPEND_INCLUDES
PREPEND_LIB
PREPEND_INCLUDES
+seabios_compile
+seabios_path
qemu_xen
qemu_traditional
blktap1
@@ -738,6 +740,7 @@ enable_xend
enable_blktap1
enable_qemu_traditional
with_system_qemu
+with_system_seabios
'
ac_precious_vars='build_alias
host_alias
@@ -1409,6 +1412,9 @@ Optional Packages:
Use system supplied qemu PATH or qemu (taken from
$PATH) as qemu-xen device model instead of building
and installing our own version
+ --with-system-seabios[=PATH]
+ Use system supplied seabios PATH instead of building
+ and installing our own version
Some influential environment variables:
CC C compiler command
@@ -3727,6 +3733,28 @@ fi
+# Check whether --with-system-seabios was given.
+if test "${with_system_seabios+set}" = set; then :
+ withval=$with_system_seabios;
+ case $withval in
+ no) seabios_compile=y ; seabios_path= ;;
+ *) seabios_compile=n ; seabios_path=$withval ;;
+ esac
+
+else
+
+ seabios_compile=y
+
+fi
+
+if test "x$seabios_compile" = "xn"; then :
+
+
+
+fi
+
+
+
diff --git a/tools/configure.ac b/tools/configure.ac
index 1f57681..67b21bb 100644
--- a/tools/configure.ac
+++ b/tools/configure.ac
@@ -97,6 +97,22 @@ AS_IF([test "x$qemu_xen" = "xn"], [
])
AC_SUBST(qemu_xen)
+AC_ARG_WITH([system-seabios],
+ AS_HELP_STRING([--with-system-seabios@<:@=PATH@:>@],
+ [Use system supplied seabios PATH instead of building and installing
+ our own version]),[
+ case $withval in
+ no) seabios_compile=y ; seabios_path= ;;
+ *) seabios_compile=n ; seabios_path=$withval ;;
+ esac
+],[
+ seabios_compile=y
+])
+AS_IF([test "x$seabios_compile" = "xn"], [
+ AC_SUBST(seabios_path)
+])
+AC_SUBST(seabios_compile)
+
AC_ARG_VAR([PREPEND_INCLUDES],
[List of include folders to prepend to CFLAGS (without -I)])
AC_ARG_VAR([PREPEND_LIB],
diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
index aff8e56..fe56036 100644
--- a/tools/firmware/Makefile
+++ b/tools/firmware/Makefile
@@ -7,7 +7,9 @@ INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
SUBDIRS-y :=
SUBDIRS-$(CONFIG_OVMF) += ovmf
-SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
+ifeq ($(CONFIG_SEABIOS),y)
+SUBDIRS-$(CONFIG_SEABIOS_COMP) += seabios-dir
+endif
SUBDIRS-$(CONFIG_ROMBIOS) += rombios
SUBDIRS-$(CONFIG_ROMBIOS) += vgabios
SUBDIRS-$(CONFIG_ROMBIOS) += etherboot
diff --git a/tools/firmware/hvmloader/Makefile b/tools/firmware/hvmloader/Makefile
index c6e7376..c81a9d2 100644
--- a/tools/firmware/hvmloader/Makefile
+++ b/tools/firmware/hvmloader/Makefile
@@ -70,7 +70,11 @@ endif
ifeq ($(CONFIG_SEABIOS),y)
OBJS += seabios.o
CFLAGS += -DENABLE_SEABIOS
-SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
+ifeq ($(CONFIG_SEABIOS_COMP),y)
+ SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
+else
+ SEABIOS_ROM := $(SEABIOS_PATH)
+endif
ROMS += $(SEABIOS_ROM)
endif
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2] tools: allow user to specify a system seabios binary
2013-08-30 10:22 [PATCH v2] tools: allow user to specify a system seabios binary Fabio Fantoni
@ 2013-09-04 13:34 ` Ian Campbell
2013-09-04 13:43 ` Andrew Cooper
2013-09-04 14:28 ` Fabio Fantoni
0 siblings, 2 replies; 5+ messages in thread
From: Ian Campbell @ 2013-09-04 13:34 UTC (permalink / raw)
To: Fabio Fantoni; +Cc: George.Dunlap, xen-devel, Ian.Jackson, Stefano.Stabellini
On Fri, 2013-08-30 at 12:22 +0200, Fabio Fantoni wrote:
> If this option is given don't bother building seabios ourselves.
> Likely to be handy for distros who have an existing seabios
> package which they want to reuse.
>
> Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
> ---
> config/Tools.mk.in | 2 ++
> tools/configure | 28 ++++++++++++++++++++++++++++
> tools/configure.ac | 16 ++++++++++++++++
> tools/firmware/Makefile | 4 +++-
> tools/firmware/hvmloader/Makefile | 6 +++++-
> 5 files changed, 54 insertions(+), 2 deletions(-)
>
> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
> index e388e42..eeca36b 100644
> --- a/config/Tools.mk.in
> +++ b/config/Tools.mk.in
> @@ -23,6 +23,7 @@ LD86 := @LD86@
> BCC := @BCC@
> IASL := @IASL@
> FETCHER := @FETCHER@
> +SEABIOS_PATH := @seabios_path@
>
> # Extra folder for libs/includes
> PREPEND_INCLUDES := @PREPEND_INCLUDES@
> @@ -52,6 +53,7 @@ CONFIG_ROMBIOS := @rombios@
> CONFIG_SEABIOS := @seabios@
> CONFIG_QEMU_TRAD := @qemu_traditional@
> CONFIG_QEMU_XEN := @qemu_xen@
> +CONFIG_SEABIOS_COMP := @seabios_compile@
I don't think you need both SEABIOS_PATH and CONFIG_SEABIOS_COMP. Simply
make the compilation of SeaBIOS conditional on SEABIOS_PATH being empty.
> CONFIG_XEND := @xend@
> CONFIG_BLKTAP1 := @blktap1@
>
> diff --git a/tools/configure.ac b/tools/configure.ac
> index 1f57681..67b21bb 100644
> --- a/tools/configure.ac
> +++ b/tools/configure.ac
> @@ -97,6 +97,22 @@ AS_IF([test "x$qemu_xen" = "xn"], [
> ])
> AC_SUBST(qemu_xen)
>
> +AC_ARG_WITH([system-seabios],
> + AS_HELP_STRING([--with-system-seabios@<:@=PATH@:>@],
> + [Use system supplied seabios PATH instead of building and installing
> + our own version]),[
> + case $withval in
> + no) seabios_compile=y ; seabios_path= ;;
> + *) seabios_compile=n ; seabios_path=$withval ;;
please line these up </nitpick>
> diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
> index aff8e56..fe56036 100644
> --- a/tools/firmware/Makefile
> +++ b/tools/firmware/Makefile
> @@ -7,7 +7,9 @@ INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
>
> SUBDIRS-y :=
> SUBDIRS-$(CONFIG_OVMF) += ovmf
> -SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
> +ifeq ($(CONFIG_SEABIOS),y)
> +SUBDIRS-$(CONFIG_SEABIOS_COMP) += seabios-dir
> +endif
Perhaps:
ifeq ($(CONFIG_SEABIOS_PATH),)
SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
endif
TBH I'm not sure that being able to disable SeaBIOS at build time is
even useful.
> SUBDIRS-$(CONFIG_ROMBIOS) += rombios
> SUBDIRS-$(CONFIG_ROMBIOS) += vgabios
> SUBDIRS-$(CONFIG_ROMBIOS) += etherboot
> diff --git a/tools/firmware/hvmloader/Makefile b/tools/firmware/hvmloader/Makefile
> index c6e7376..c81a9d2 100644
> --- a/tools/firmware/hvmloader/Makefile
> +++ b/tools/firmware/hvmloader/Makefile
> @@ -70,7 +70,11 @@ endif
> ifeq ($(CONFIG_SEABIOS),y)
> OBJS += seabios.o
> CFLAGS += -DENABLE_SEABIOS
> -SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
> +ifeq ($(CONFIG_SEABIOS_COMP),y)
> + SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
> +else
> + SEABIOS_ROM := $(SEABIOS_PATH)
> +endif
> ROMS += $(SEABIOS_ROM)
> endif
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] tools: allow user to specify a system seabios binary
2013-09-04 13:34 ` Ian Campbell
@ 2013-09-04 13:43 ` Andrew Cooper
2013-09-04 13:53 ` Ian Campbell
2013-09-04 14:28 ` Fabio Fantoni
1 sibling, 1 reply; 5+ messages in thread
From: Andrew Cooper @ 2013-09-04 13:43 UTC (permalink / raw)
To: Ian Campbell
Cc: George.Dunlap, Fabio Fantoni, Ian.Jackson, xen-devel,
Stefano.Stabellini
On 04/09/13 14:34, Ian Campbell wrote:
> On Fri, 2013-08-30 at 12:22 +0200, Fabio Fantoni wrote:
>> If this option is given don't bother building seabios ourselves.
>> Likely to be handy for distros who have an existing seabios
>> package which they want to reuse.
>>
>> Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
>> ---
>> config/Tools.mk.in | 2 ++
>> tools/configure | 28 ++++++++++++++++++++++++++++
>> tools/configure.ac | 16 ++++++++++++++++
>> tools/firmware/Makefile | 4 +++-
>> tools/firmware/hvmloader/Makefile | 6 +++++-
>> 5 files changed, 54 insertions(+), 2 deletions(-)
>>
>> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
>> index e388e42..eeca36b 100644
>> --- a/config/Tools.mk.in
>> +++ b/config/Tools.mk.in
>> @@ -23,6 +23,7 @@ LD86 := @LD86@
>> BCC := @BCC@
>> IASL := @IASL@
>> FETCHER := @FETCHER@
>> +SEABIOS_PATH := @seabios_path@
>>
>> # Extra folder for libs/includes
>> PREPEND_INCLUDES := @PREPEND_INCLUDES@
>> @@ -52,6 +53,7 @@ CONFIG_ROMBIOS := @rombios@
>> CONFIG_SEABIOS := @seabios@
>> CONFIG_QEMU_TRAD := @qemu_traditional@
>> CONFIG_QEMU_XEN := @qemu_xen@
>> +CONFIG_SEABIOS_COMP := @seabios_compile@
> I don't think you need both SEABIOS_PATH and CONFIG_SEABIOS_COMP. Simply
> make the compilation of SeaBIOS conditional on SEABIOS_PATH being empty.
>
>> CONFIG_XEND := @xend@
>> CONFIG_BLKTAP1 := @blktap1@
>>
>> diff --git a/tools/configure.ac b/tools/configure.ac
>> index 1f57681..67b21bb 100644
>> --- a/tools/configure.ac
>> +++ b/tools/configure.ac
>> @@ -97,6 +97,22 @@ AS_IF([test "x$qemu_xen" = "xn"], [
>> ])
>> AC_SUBST(qemu_xen)
>>
>> +AC_ARG_WITH([system-seabios],
>> + AS_HELP_STRING([--with-system-seabios@<:@=PATH@:>@],
>> + [Use system supplied seabios PATH instead of building and installing
>> + our own version]),[
>> + case $withval in
>> + no) seabios_compile=y ; seabios_path= ;;
>> + *) seabios_compile=n ; seabios_path=$withval ;;
> please line these up </nitpick>
>
>> diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
>> index aff8e56..fe56036 100644
>> --- a/tools/firmware/Makefile
>> +++ b/tools/firmware/Makefile
>> @@ -7,7 +7,9 @@ INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
>>
>> SUBDIRS-y :=
>> SUBDIRS-$(CONFIG_OVMF) += ovmf
>> -SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
>> +ifeq ($(CONFIG_SEABIOS),y)
>> +SUBDIRS-$(CONFIG_SEABIOS_COMP) += seabios-dir
>> +endif
> Perhaps:
>
> ifeq ($(CONFIG_SEABIOS_PATH),)
ifneq ?
> SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
> endif
>
> TBH I'm not sure that being able to disable SeaBIOS at build time is
> even useful.
Speaking as a downstream distro which doesn't currently use SeaBIOS, the
ability to disable is very useful to prevent having the xen build system
download yet more code.
While it is valid to have some combination of components built without
using SeaBIOS, an option to disable is more useful than not, even if
everyone is expected to use the default.
~Andrew
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] tools: allow user to specify a system seabios binary
2013-09-04 13:43 ` Andrew Cooper
@ 2013-09-04 13:53 ` Ian Campbell
0 siblings, 0 replies; 5+ messages in thread
From: Ian Campbell @ 2013-09-04 13:53 UTC (permalink / raw)
To: Andrew Cooper
Cc: George.Dunlap, Fabio Fantoni, Ian.Jackson, xen-devel,
Stefano.Stabellini
On Wed, 2013-09-04 at 14:43 +0100, Andrew Cooper wrote:
> >> diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
> >> index aff8e56..fe56036 100644
> >> --- a/tools/firmware/Makefile
> >> +++ b/tools/firmware/Makefile
> >> @@ -7,7 +7,9 @@ INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
> >>
> >> SUBDIRS-y :=
> >> SUBDIRS-$(CONFIG_OVMF) += ovmf
> >> -SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
> >> +ifeq ($(CONFIG_SEABIOS),y)
> >> +SUBDIRS-$(CONFIG_SEABIOS_COMP) += seabios-dir
> >> +endif
> > Perhaps:
> >
> > ifeq ($(CONFIG_SEABIOS_PATH),)
>
> ifneq ?
If CONFIG_SEABIOS_PATH == "" then we want to build, so I think ifeq was
correct.
>
> > SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
> > endif
> >
> > TBH I'm not sure that being able to disable SeaBIOS at build time is
> > even useful.
>
> Speaking as a downstream distro which doesn't currently use SeaBIOS, the
> ability to disable is very useful to prevent having the xen build system
> download yet more code.
>
> While it is valid to have some combination of components built without
> using SeaBIOS, an option to disable is more useful than not, even if
> everyone is expected to use the default.
SeaBIOS should be built iff qemu-xen (upstream) is enabled. Since that
isn't an build time option I think think SeaBIOS needs to be either.
Ian.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] tools: allow user to specify a system seabios binary
2013-09-04 13:34 ` Ian Campbell
2013-09-04 13:43 ` Andrew Cooper
@ 2013-09-04 14:28 ` Fabio Fantoni
1 sibling, 0 replies; 5+ messages in thread
From: Fabio Fantoni @ 2013-09-04 14:28 UTC (permalink / raw)
To: Ian Campbell; +Cc: George.Dunlap, xen-devel, Ian.Jackson, Stefano.Stabellini
Il 04/09/2013 15:34, Ian Campbell ha scritto:
> On Fri, 2013-08-30 at 12:22 +0200, Fabio Fantoni wrote:
>> If this option is given don't bother building seabios ourselves.
>> Likely to be handy for distros who have an existing seabios
>> package which they want to reuse.
>>
>> Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
>> ---
>> config/Tools.mk.in | 2 ++
>> tools/configure | 28 ++++++++++++++++++++++++++++
>> tools/configure.ac | 16 ++++++++++++++++
>> tools/firmware/Makefile | 4 +++-
>> tools/firmware/hvmloader/Makefile | 6 +++++-
>> 5 files changed, 54 insertions(+), 2 deletions(-)
>>
>> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
>> index e388e42..eeca36b 100644
>> --- a/config/Tools.mk.in
>> +++ b/config/Tools.mk.in
>> @@ -23,6 +23,7 @@ LD86 := @LD86@
>> BCC := @BCC@
>> IASL := @IASL@
>> FETCHER := @FETCHER@
>> +SEABIOS_PATH := @seabios_path@
>>
>> # Extra folder for libs/includes
>> PREPEND_INCLUDES := @PREPEND_INCLUDES@
>> @@ -52,6 +53,7 @@ CONFIG_ROMBIOS := @rombios@
>> CONFIG_SEABIOS := @seabios@
>> CONFIG_QEMU_TRAD := @qemu_traditional@
>> CONFIG_QEMU_XEN := @qemu_xen@
>> +CONFIG_SEABIOS_COMP := @seabios_compile@
> I don't think you need both SEABIOS_PATH and CONFIG_SEABIOS_COMP. Simply
> make the compilation of SeaBIOS conditional on SEABIOS_PATH being empty.
Thanks for reply, I'll do new patch version probably tomorrow.
>> CONFIG_XEND := @xend@
>> CONFIG_BLKTAP1 := @blktap1@
>>
>> diff --git a/tools/configure.ac b/tools/configure.ac
>> index 1f57681..67b21bb 100644
>> --- a/tools/configure.ac
>> +++ b/tools/configure.ac
>> @@ -97,6 +97,22 @@ AS_IF([test "x$qemu_xen" = "xn"], [
>> ])
>> AC_SUBST(qemu_xen)
>>
>> +AC_ARG_WITH([system-seabios],
>> + AS_HELP_STRING([--with-system-seabios@<:@=PATH@:>@],
>> + [Use system supplied seabios PATH instead of building and installing
>> + our own version]),[
>> + case $withval in
>> + no) seabios_compile=y ; seabios_path= ;;
>> + *) seabios_compile=n ; seabios_path=$withval ;;
> please line these up </nitpick>
>
>> diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
>> index aff8e56..fe56036 100644
>> --- a/tools/firmware/Makefile
>> +++ b/tools/firmware/Makefile
>> @@ -7,7 +7,9 @@ INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
>>
>> SUBDIRS-y :=
>> SUBDIRS-$(CONFIG_OVMF) += ovmf
>> -SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
>> +ifeq ($(CONFIG_SEABIOS),y)
>> +SUBDIRS-$(CONFIG_SEABIOS_COMP) += seabios-dir
>> +endif
> Perhaps:
>
> ifeq ($(CONFIG_SEABIOS_PATH),)
> SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
> endif
>
> TBH I'm not sure that being able to disable SeaBIOS at build time is
> even useful.
>
>> SUBDIRS-$(CONFIG_ROMBIOS) += rombios
>> SUBDIRS-$(CONFIG_ROMBIOS) += vgabios
>> SUBDIRS-$(CONFIG_ROMBIOS) += etherboot
>> diff --git a/tools/firmware/hvmloader/Makefile b/tools/firmware/hvmloader/Makefile
>> index c6e7376..c81a9d2 100644
>> --- a/tools/firmware/hvmloader/Makefile
>> +++ b/tools/firmware/hvmloader/Makefile
>> @@ -70,7 +70,11 @@ endif
>> ifeq ($(CONFIG_SEABIOS),y)
>> OBJS += seabios.o
>> CFLAGS += -DENABLE_SEABIOS
>> -SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
>> +ifeq ($(CONFIG_SEABIOS_COMP),y)
>> + SEABIOS_ROM := $(SEABIOS_DIR)/out/bios.bin
>> +else
>> + SEABIOS_ROM := $(SEABIOS_PATH)
>> +endif
>> ROMS += $(SEABIOS_ROM)
>> endif
>>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-09-04 14:28 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-30 10:22 [PATCH v2] tools: allow user to specify a system seabios binary Fabio Fantoni
2013-09-04 13:34 ` Ian Campbell
2013-09-04 13:43 ` Andrew Cooper
2013-09-04 13:53 ` Ian Campbell
2013-09-04 14:28 ` Fabio Fantoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).