* [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user)
@ 2020-01-09 15:39 Philippe Mathieu-Daudé
2020-01-09 15:39 ` [PATCH 1/4] configure: Do not build libfdt is not required Philippe Mathieu-Daudé
` (4 more replies)
0 siblings, 5 replies; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-09 15:39 UTC (permalink / raw)
To: qemu-devel
Cc: Thomas Huth, Alex Bennée, Laurent Vivier, Paolo Bonzini,
Philippe Mathieu-Daudé,
Richard Henderson
In some configuration (linux-user, tools) we can ignore building
various objects (and the libfdt).
Philippe Mathieu-Daudé (4):
configure: Do not build libfdt is not required
Makefile: Clarify all the codebase requires qom/ objects
Makefile: Restrict system emulation and tools objects
Makefile: Remove unhelpful comment
configure | 2 ++
Makefile.objs | 31 ++++++++++---------------------
2 files changed, 12 insertions(+), 21 deletions(-)
--
2.21.1
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 1/4] configure: Do not build libfdt is not required
2020-01-09 15:39 [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Philippe Mathieu-Daudé
@ 2020-01-09 15:39 ` Philippe Mathieu-Daudé
2020-01-09 16:33 ` Thomas Huth
2020-01-10 10:04 ` Alistair Francis
2020-01-09 15:39 ` [PATCH 2/4] Makefile: Clarify all the codebase requires qom/ objects Philippe Mathieu-Daudé
` (3 subsequent siblings)
4 siblings, 2 replies; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-09 15:39 UTC (permalink / raw)
To: qemu-devel
Cc: Thomas Huth, Alex Bennée, Laurent Vivier, Paolo Bonzini,
Philippe Mathieu-Daudé,
Richard Henderson
We only require libfdt for system emulation, in a small set
of architecture:
4077 # fdt support is mandatory for at least some target architectures,
4078 # so insist on it if we're building those system emulators.
4079 fdt_required=no
4080 for target in $target_list; do
4081 case $target in
4082 aarch64*-softmmu|arm*-softmmu|ppc*-softmmu|microblaze*-softmmu|mips64el-softmmu|riscv*-softmmu)
4083 fdt_required=yes
Do not build libfdt if we did not manually specified --enable-fdt.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
configure | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configure b/configure
index 0ce2c0354a..266a8386d1 100755
--- a/configure
+++ b/configure
@@ -4092,6 +4092,8 @@ if test "$fdt_required" = "yes"; then
"targets which need it (by specifying a cut down --target-list)."
fi
fdt=yes
+elif test "$fdt" != "yes" ; then
+ fdt=no
fi
if test "$fdt" != "no" ; then
--
2.21.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 2/4] Makefile: Clarify all the codebase requires qom/ objects
2020-01-09 15:39 [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Philippe Mathieu-Daudé
2020-01-09 15:39 ` [PATCH 1/4] configure: Do not build libfdt is not required Philippe Mathieu-Daudé
@ 2020-01-09 15:39 ` Philippe Mathieu-Daudé
2020-01-10 8:13 ` Thomas Huth
2020-01-09 15:39 ` [PATCH 3/4] Makefile: Restrict system emulation and tools objects Philippe Mathieu-Daudé
` (2 subsequent siblings)
4 siblings, 1 reply; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-09 15:39 UTC (permalink / raw)
To: qemu-devel
Cc: Thomas Huth, Alex Bennée, Laurent Vivier, Paolo Bonzini,
Philippe Mathieu-Daudé,
Richard Henderson
QEMU user-mode also requires the qom/ objects, it is not only
used by "system emulation and qemu-img". As we will use a big
if() block, move it upper in the "Common libraries for tools
and emulators" section.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Makefile.objs | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/Makefile.objs b/Makefile.objs
index 7c1e50f9d6..5aae561984 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -2,6 +2,7 @@
# Common libraries for tools and emulators
stub-obj-y = stubs/
util-obj-y = crypto/ util/ qobject/ qapi/
+qom-obj-y = qom/
chardev-obj-y = chardev/
@@ -26,11 +27,6 @@ block-obj-m = block/
crypto-obj-y = crypto/
-#######################################################################
-# qom-obj-y is code used by both qemu system emulation and qemu-img
-
-qom-obj-y = qom/
-
#######################################################################
# io-obj-y is code used by both qemu system emulation and qemu-img
--
2.21.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 3/4] Makefile: Restrict system emulation and tools objects
2020-01-09 15:39 [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Philippe Mathieu-Daudé
2020-01-09 15:39 ` [PATCH 1/4] configure: Do not build libfdt is not required Philippe Mathieu-Daudé
2020-01-09 15:39 ` [PATCH 2/4] Makefile: Clarify all the codebase requires qom/ objects Philippe Mathieu-Daudé
@ 2020-01-09 15:39 ` Philippe Mathieu-Daudé
2020-01-10 8:14 ` Thomas Huth
2020-01-09 15:39 ` [PATCH 4/4] Makefile: Remove unhelpful comment Philippe Mathieu-Daudé
2020-01-10 8:35 ` [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Laurent Vivier
4 siblings, 1 reply; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-09 15:39 UTC (permalink / raw)
To: qemu-devel
Cc: Thomas Huth, Alex Bennée, Laurent Vivier, Paolo Bonzini,
Philippe Mathieu-Daudé,
Richard Henderson
Restrict all the system emulation and tools objects with a
Makefile IF (CONFIG_SOFTMMU OR CONFIG_TOOLS) check.
Using the same description over and over is not very helpful.
Use it once, just before the if() block.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Makefile.objs | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/Makefile.objs b/Makefile.objs
index 5aae561984..395dd1e670 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -4,16 +4,15 @@ stub-obj-y = stubs/
util-obj-y = crypto/ util/ qobject/ qapi/
qom-obj-y = qom/
+#######################################################################
+# code used by both qemu system emulation and qemu-img
+
+ifeq ($(call lor,$(CONFIG_SOFTMMU),$(CONFIG_TOOLS)),y)
+
chardev-obj-y = chardev/
-#######################################################################
-# authz-obj-y is code used by both qemu system emulation and qemu-img
-
authz-obj-y = authz/
-#######################################################################
-# block-obj-y is code used by both qemu system emulation and qemu-img
-
block-obj-y = nbd/
block-obj-y += block.o blockjob.o job.o
block-obj-y += block/ scsi/
@@ -22,16 +21,12 @@ block-obj-$(CONFIG_REPLICATION) += replication.o
block-obj-m = block/
-#######################################################################
-# crypto-obj-y is code used by both qemu system emulation and qemu-img
-
crypto-obj-y = crypto/
-#######################################################################
-# io-obj-y is code used by both qemu system emulation and qemu-img
-
io-obj-y = io/
+endif # CONFIG_SOFTMMU or CONFIG_TOOLS
+
######################################################################
# Target independent part of system emulation. The long term path is to
# suppress *all* target specific code in case of system emulation, i.e. a
--
2.21.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 4/4] Makefile: Remove unhelpful comment
2020-01-09 15:39 [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Philippe Mathieu-Daudé
` (2 preceding siblings ...)
2020-01-09 15:39 ` [PATCH 3/4] Makefile: Restrict system emulation and tools objects Philippe Mathieu-Daudé
@ 2020-01-09 15:39 ` Philippe Mathieu-Daudé
2020-01-10 8:15 ` Thomas Huth
2020-01-10 8:35 ` [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Laurent Vivier
4 siblings, 1 reply; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-09 15:39 UTC (permalink / raw)
To: qemu-devel
Cc: Thomas Huth, Alex Bennée, Laurent Vivier, Paolo Bonzini,
Philippe Mathieu-Daudé,
Richard Henderson
It is pointless to keep qapi/ object separate from the other
common-objects. Drop the comment.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Makefile.objs | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/Makefile.objs b/Makefile.objs
index 395dd1e670..c6321d0465 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -71,11 +71,9 @@ qemu-seccomp.o-libs := $(SECCOMP_LIBS)
common-obj-$(CONFIG_FDT) += device_tree.o
-######################################################################
-# qapi
-
common-obj-y += qapi/
-endif
+
+endif # CONFIG_SOFTMMU
#######################################################################
# Target-independent parts used in system and user emulation
--
2.21.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 1/4] configure: Do not build libfdt is not required
2020-01-09 15:39 ` [PATCH 1/4] configure: Do not build libfdt is not required Philippe Mathieu-Daudé
@ 2020-01-09 16:33 ` Thomas Huth
2020-01-10 10:04 ` Alistair Francis
1 sibling, 0 replies; 16+ messages in thread
From: Thomas Huth @ 2020-01-09 16:33 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel
Cc: Paolo Bonzini, Alex Bennée, Laurent Vivier, Richard Henderson
On 09/01/2020 16.39, Philippe Mathieu-Daudé wrote:
> We only require libfdt for system emulation, in a small set
> of architecture:
>
> 4077 # fdt support is mandatory for at least some target architectures,
> 4078 # so insist on it if we're building those system emulators.
> 4079 fdt_required=no
> 4080 for target in $target_list; do
> 4081 case $target in
> 4082 aarch64*-softmmu|arm*-softmmu|ppc*-softmmu|microblaze*-softmmu|mips64el-softmmu|riscv*-softmmu)
> 4083 fdt_required=yes
>
> Do not build libfdt if we did not manually specified --enable-fdt.
I suggest to add:
"... or have one of the platforms that require it in our target list."
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> configure | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/configure b/configure
> index 0ce2c0354a..266a8386d1 100755
> --- a/configure
> +++ b/configure
> @@ -4092,6 +4092,8 @@ if test "$fdt_required" = "yes"; then
> "targets which need it (by specifying a cut down --target-list)."
> fi
> fdt=yes
> +elif test "$fdt" != "yes" ; then
> + fdt=no
> fi
>
> if test "$fdt" != "no" ; then
>
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/4] Makefile: Clarify all the codebase requires qom/ objects
2020-01-09 15:39 ` [PATCH 2/4] Makefile: Clarify all the codebase requires qom/ objects Philippe Mathieu-Daudé
@ 2020-01-10 8:13 ` Thomas Huth
0 siblings, 0 replies; 16+ messages in thread
From: Thomas Huth @ 2020-01-10 8:13 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel
Cc: Paolo Bonzini, Alex Bennée, Laurent Vivier, Richard Henderson
On 09/01/2020 16.39, Philippe Mathieu-Daudé wrote:
> QEMU user-mode also requires the qom/ objects, it is not only
> used by "system emulation and qemu-img". As we will use a big
> if() block, move it upper in the "Common libraries for tools
> and emulators" section.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> Makefile.objs | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/Makefile.objs b/Makefile.objs
> index 7c1e50f9d6..5aae561984 100644
> --- a/Makefile.objs
> +++ b/Makefile.objs
> @@ -2,6 +2,7 @@
> # Common libraries for tools and emulators
> stub-obj-y = stubs/
> util-obj-y = crypto/ util/ qobject/ qapi/
> +qom-obj-y = qom/
>
> chardev-obj-y = chardev/
>
> @@ -26,11 +27,6 @@ block-obj-m = block/
>
> crypto-obj-y = crypto/
>
> -#######################################################################
> -# qom-obj-y is code used by both qemu system emulation and qemu-img
> -
> -qom-obj-y = qom/
> -
> #######################################################################
> # io-obj-y is code used by both qemu system emulation and qemu-img
>
>
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 3/4] Makefile: Restrict system emulation and tools objects
2020-01-09 15:39 ` [PATCH 3/4] Makefile: Restrict system emulation and tools objects Philippe Mathieu-Daudé
@ 2020-01-10 8:14 ` Thomas Huth
2020-01-10 8:25 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 16+ messages in thread
From: Thomas Huth @ 2020-01-10 8:14 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel
Cc: Paolo Bonzini, Alex Bennée, Laurent Vivier, Richard Henderson
On 09/01/2020 16.39, Philippe Mathieu-Daudé wrote:
> Restrict all the system emulation and tools objects with a
> Makefile IF (CONFIG_SOFTMMU OR CONFIG_TOOLS) check.
>
> Using the same description over and over is not very helpful.
> Use it once, just before the if() block.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> Makefile.objs | 19 +++++++------------
> 1 file changed, 7 insertions(+), 12 deletions(-)
>
> diff --git a/Makefile.objs b/Makefile.objs
> index 5aae561984..395dd1e670 100644
> --- a/Makefile.objs
> +++ b/Makefile.objs
> @@ -4,16 +4,15 @@ stub-obj-y = stubs/
> util-obj-y = crypto/ util/ qobject/ qapi/
> qom-obj-y = qom/
>
> +#######################################################################
> +# code used by both qemu system emulation and qemu-img
> +
> +ifeq ($(call lor,$(CONFIG_SOFTMMU),$(CONFIG_TOOLS)),y)
That ",y" at the end looks wrong?
Thomas
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 4/4] Makefile: Remove unhelpful comment
2020-01-09 15:39 ` [PATCH 4/4] Makefile: Remove unhelpful comment Philippe Mathieu-Daudé
@ 2020-01-10 8:15 ` Thomas Huth
0 siblings, 0 replies; 16+ messages in thread
From: Thomas Huth @ 2020-01-10 8:15 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel
Cc: Paolo Bonzini, Alex Bennée, Laurent Vivier,
Markus Armbruster, Richard Henderson
On 09/01/2020 16.39, Philippe Mathieu-Daudé wrote:
> It is pointless to keep qapi/ object separate from the other
> common-objects. Drop the comment.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> Makefile.objs | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/Makefile.objs b/Makefile.objs
> index 395dd1e670..c6321d0465 100644
> --- a/Makefile.objs
> +++ b/Makefile.objs
> @@ -71,11 +71,9 @@ qemu-seccomp.o-libs := $(SECCOMP_LIBS)
>
> common-obj-$(CONFIG_FDT) += device_tree.o
>
> -######################################################################
> -# qapi
> -
> common-obj-y += qapi/
> -endif
> +
> +endif # CONFIG_SOFTMMU
>
> #######################################################################
> # Target-independent parts used in system and user emulation
>
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 3/4] Makefile: Restrict system emulation and tools objects
2020-01-10 8:14 ` Thomas Huth
@ 2020-01-10 8:25 ` Philippe Mathieu-Daudé
2020-01-10 8:34 ` Thomas Huth
0 siblings, 1 reply; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-10 8:25 UTC (permalink / raw)
To: Thomas Huth
Cc: Philippe Mathieu-Daudé,
qemu-devel@nongnu.org Developers, Laurent Vivier, Paolo Bonzini,
Alex Bennée, Richard Henderson
[-- Attachment #1: Type: text/plain, Size: 1097 bytes --]
Le ven. 10 janv. 2020 09:18, Thomas Huth <thuth@redhat.com> a écrit :
> On 09/01/2020 16.39, Philippe Mathieu-Daudé wrote:
> > Restrict all the system emulation and tools objects with a
> > Makefile IF (CONFIG_SOFTMMU OR CONFIG_TOOLS) check.
> >
> > Using the same description over and over is not very helpful.
> > Use it once, just before the if() block.
> >
> > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> > ---
> > Makefile.objs | 19 +++++++------------
> > 1 file changed, 7 insertions(+), 12 deletions(-)
> >
> > diff --git a/Makefile.objs b/Makefile.objs
> > index 5aae561984..395dd1e670 100644
> > --- a/Makefile.objs
> > +++ b/Makefile.objs
> > @@ -4,16 +4,15 @@ stub-obj-y = stubs/
> > util-obj-y = crypto/ util/ qobject/ qapi/
> > qom-obj-y = qom/
> >
> > +#######################################################################
> > +# code used by both qemu system emulation and qemu-img
> > +
> > +ifeq ($(call lor,$(CONFIG_SOFTMMU),$(CONFIG_TOOLS)),y)
>
> That ",y" at the end looks wrong?
>
It's the result of the logical OR.
[-- Attachment #2: Type: text/html, Size: 1626 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 3/4] Makefile: Restrict system emulation and tools objects
2020-01-10 8:25 ` Philippe Mathieu-Daudé
@ 2020-01-10 8:34 ` Thomas Huth
0 siblings, 0 replies; 16+ messages in thread
From: Thomas Huth @ 2020-01-10 8:34 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Philippe Mathieu-Daudé,
qemu-devel@nongnu.org Developers, Laurent Vivier, Paolo Bonzini,
Alex Bennée, Richard Henderson
On 10/01/2020 09.25, Philippe Mathieu-Daudé wrote:
> Le ven. 10 janv. 2020 09:18, Thomas Huth <thuth@redhat.com
> <mailto:thuth@redhat.com>> a écrit :
>
> On 09/01/2020 16.39, Philippe Mathieu-Daudé wrote:
> > Restrict all the system emulation and tools objects with a
> > Makefile IF (CONFIG_SOFTMMU OR CONFIG_TOOLS) check.
> >
> > Using the same description over and over is not very helpful.
> > Use it once, just before the if() block.
> >
> > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com
> <mailto:philmd@redhat.com>>
> > ---
> > Makefile.objs | 19 +++++++------------
> > 1 file changed, 7 insertions(+), 12 deletions(-)
> >
> > diff --git a/Makefile.objs b/Makefile.objs
> > index 5aae561984..395dd1e670 100644
> > --- a/Makefile.objs
> > +++ b/Makefile.objs
> > @@ -4,16 +4,15 @@ stub-obj-y = stubs/
> > util-obj-y = crypto/ util/ qobject/ qapi/
> > qom-obj-y = qom/
> >
> >
> +#######################################################################
> > +# code used by both qemu system emulation and qemu-img
> > +
> > +ifeq ($(call lor,$(CONFIG_SOFTMMU),$(CONFIG_TOOLS)),y)
>
> That ",y" at the end looks wrong?
>
>
> It's the result of the logical OR.
-ENOTENOUGHCOFFEEYET
Your code is fine, of course.
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user)
2020-01-09 15:39 [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Philippe Mathieu-Daudé
` (3 preceding siblings ...)
2020-01-09 15:39 ` [PATCH 4/4] Makefile: Remove unhelpful comment Philippe Mathieu-Daudé
@ 2020-01-10 8:35 ` Laurent Vivier
2020-01-10 9:17 ` Philippe Mathieu-Daudé
4 siblings, 1 reply; 16+ messages in thread
From: Laurent Vivier @ 2020-01-10 8:35 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel
Cc: Paolo Bonzini, Thomas Huth, Alex Bennée, Richard Henderson
Le 09/01/2020 à 16:39, Philippe Mathieu-Daudé a écrit :
> In some configuration (linux-user, tools) we can ignore building
> various objects (and the libfdt).
>
> Philippe Mathieu-Daudé (4):
> configure: Do not build libfdt is not required
> Makefile: Clarify all the codebase requires qom/ objects
> Makefile: Restrict system emulation and tools objects
> Makefile: Remove unhelpful comment
>
> configure | 2 ++
> Makefile.objs | 31 ++++++++++---------------------
> 2 files changed, 12 insertions(+), 21 deletions(-)
>
Did you test this with all the combinations of --[enable|disable]-tools,
--[enable|disable]-user and --[enable|disable]-system?
Thanks,
Laurent
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user)
2020-01-10 8:35 ` [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Laurent Vivier
@ 2020-01-10 9:17 ` Philippe Mathieu-Daudé
2020-01-10 14:03 ` Laurent Vivier
0 siblings, 1 reply; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-10 9:17 UTC (permalink / raw)
To: Laurent Vivier
Cc: Thomas Huth, Philippe Mathieu-Daudé,
qemu-devel@nongnu.org Developers, Paolo Bonzini,
Alex Bennée, Richard Henderson
[-- Attachment #1: Type: text/plain, Size: 944 bytes --]
Le ven. 10 janv. 2020 09:36, Laurent Vivier <laurent@vivier.eu> a écrit :
> Le 09/01/2020 à 16:39, Philippe Mathieu-Daudé a écrit :
> > In some configuration (linux-user, tools) we can ignore building
> > various objects (and the libfdt).
> >
> > Philippe Mathieu-Daudé (4):
> > configure: Do not build libfdt is not required
> > Makefile: Clarify all the codebase requires qom/ objects
> > Makefile: Restrict system emulation and tools objects
> > Makefile: Remove unhelpful comment
> >
> > configure | 2 ++
> > Makefile.objs | 31 ++++++++++---------------------
> > 2 files changed, 12 insertions(+), 21 deletions(-)
> >
>
> Did you test this with all the combinations of --[enable|disable]-tools,
> --[enable|disable]-user and --[enable|disable]-system
>
I tested 12 of 27 because I thought some sets might overlap but I might
have missed something, what combination is giving you problem?
>
[-- Attachment #2: Type: text/html, Size: 1509 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 1/4] configure: Do not build libfdt is not required
2020-01-09 15:39 ` [PATCH 1/4] configure: Do not build libfdt is not required Philippe Mathieu-Daudé
2020-01-09 16:33 ` Thomas Huth
@ 2020-01-10 10:04 ` Alistair Francis
1 sibling, 0 replies; 16+ messages in thread
From: Alistair Francis @ 2020-01-10 10:04 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Thomas Huth, qemu-devel@nongnu.org Developers, Laurent Vivier,
Paolo Bonzini, Alex Bennée, Richard Henderson
On Thu, Jan 9, 2020 at 11:40 PM Philippe Mathieu-Daudé
<philmd@redhat.com> wrote:
>
> We only require libfdt for system emulation, in a small set
> of architecture:
>
> 4077 # fdt support is mandatory for at least some target architectures,
> 4078 # so insist on it if we're building those system emulators.
> 4079 fdt_required=no
> 4080 for target in $target_list; do
> 4081 case $target in
> 4082 aarch64*-softmmu|arm*-softmmu|ppc*-softmmu|microblaze*-softmmu|mips64el-softmmu|riscv*-softmmu)
> 4083 fdt_required=yes
>
> Do not build libfdt if we did not manually specified --enable-fdt.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Alistair
> ---
> configure | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/configure b/configure
> index 0ce2c0354a..266a8386d1 100755
> --- a/configure
> +++ b/configure
> @@ -4092,6 +4092,8 @@ if test "$fdt_required" = "yes"; then
> "targets which need it (by specifying a cut down --target-list)."
> fi
> fdt=yes
> +elif test "$fdt" != "yes" ; then
> + fdt=no
> fi
>
> if test "$fdt" != "no" ; then
> --
> 2.21.1
>
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user)
2020-01-10 9:17 ` Philippe Mathieu-Daudé
@ 2020-01-10 14:03 ` Laurent Vivier
2020-01-10 16:41 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 16+ messages in thread
From: Laurent Vivier @ 2020-01-10 14:03 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Thomas Huth, Philippe Mathieu-Daudé,
qemu-devel@nongnu.org Developers, Paolo Bonzini,
Alex Bennée, Richard Henderson
Le 10/01/2020 à 10:17, Philippe Mathieu-Daudé a écrit :
> Le ven. 10 janv. 2020 09:36, Laurent Vivier <laurent@vivier.eu
> <mailto:laurent@vivier.eu>> a écrit :
>
> Le 09/01/2020 à 16:39, Philippe Mathieu-Daudé a écrit :
> > In some configuration (linux-user, tools) we can ignore building
> > various objects (and the libfdt).
> >
> > Philippe Mathieu-Daudé (4):
> > configure: Do not build libfdt is not required
> > Makefile: Clarify all the codebase requires qom/ objects
> > Makefile: Restrict system emulation and tools objects
> > Makefile: Remove unhelpful comment
> >
> > configure | 2 ++
> > Makefile.objs | 31 ++++++++++---------------------
> > 2 files changed, 12 insertions(+), 21 deletions(-)
> >
>
> Did you test this with all the combinations of --[enable|disable]-tools,
> --[enable|disable]-user and --[enable|disable]-system
>
>
> I tested 12 of 27 because I thought some sets might overlap but I might
> have missed something, what combination is giving you problem?
>
I didn't test your series, but I did this kind of change in the past and
sometime enabling tools without enabling softmmu can show missing
objects at build time, or you can also see if tools are built with
softmmu while tools are disabled.
I used to test with something like
for user in enable disable; do
for tools in enable disable; do
for system in enable disable; do
rm -fr build
mkdir build && \
(cd build && \
../configure --$user-user \
--$system-system \
--$tools-tools && \
make || exit)
done
done
done
Thanks,
Laurent
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user)
2020-01-10 14:03 ` Laurent Vivier
@ 2020-01-10 16:41 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 16+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-10 16:41 UTC (permalink / raw)
To: Laurent Vivier, Philippe Mathieu-Daudé
Cc: Paolo Bonzini, Thomas Huth, Alex Bennée,
qemu-devel@nongnu.org Developers, Richard Henderson
On 1/10/20 3:03 PM, Laurent Vivier wrote:
> Le 10/01/2020 à 10:17, Philippe Mathieu-Daudé a écrit :
>> Le ven. 10 janv. 2020 09:36, Laurent Vivier <laurent@vivier.eu
>> <mailto:laurent@vivier.eu>> a écrit :
>>
>> Le 09/01/2020 à 16:39, Philippe Mathieu-Daudé a écrit :
>> > In some configuration (linux-user, tools) we can ignore building
>> > various objects (and the libfdt).
>> >
>> > Philippe Mathieu-Daudé (4):
>> > configure: Do not build libfdt is not required
>> > Makefile: Clarify all the codebase requires qom/ objects
>> > Makefile: Restrict system emulation and tools objects
>> > Makefile: Remove unhelpful comment
>> >
>> > configure | 2 ++
>> > Makefile.objs | 31 ++++++++++---------------------
>> > 2 files changed, 12 insertions(+), 21 deletions(-)
>> >
>>
>> Did you test this with all the combinations of --[enable|disable]-tools,
>> --[enable|disable]-user and --[enable|disable]-system
>>
>>
>> I tested 12 of 27 because I thought some sets might overlap but I might
>> have missed something, what combination is giving you problem?
>>
>
> I didn't test your series, but I did this kind of change in the past and
> sometime enabling tools without enabling softmmu can show missing
> objects at build time, or you can also see if tools are built with
> softmmu while tools are disabled.
>
> I used to test with something like
>
> for user in enable disable; do
> for tools in enable disable; do
> for system in enable disable; do
> rm -fr build
> mkdir build && \
> (cd build && \
> ../configure --$user-user \
> --$system-system \
> --$tools-tools && \
> make || exit)
> done
> done
> done
I tested all these 8 combinations, no problem.
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2020-01-10 16:42 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-09 15:39 [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Philippe Mathieu-Daudé
2020-01-09 15:39 ` [PATCH 1/4] configure: Do not build libfdt is not required Philippe Mathieu-Daudé
2020-01-09 16:33 ` Thomas Huth
2020-01-10 10:04 ` Alistair Francis
2020-01-09 15:39 ` [PATCH 2/4] Makefile: Clarify all the codebase requires qom/ objects Philippe Mathieu-Daudé
2020-01-10 8:13 ` Thomas Huth
2020-01-09 15:39 ` [PATCH 3/4] Makefile: Restrict system emulation and tools objects Philippe Mathieu-Daudé
2020-01-10 8:14 ` Thomas Huth
2020-01-10 8:25 ` Philippe Mathieu-Daudé
2020-01-10 8:34 ` Thomas Huth
2020-01-09 15:39 ` [PATCH 4/4] Makefile: Remove unhelpful comment Philippe Mathieu-Daudé
2020-01-10 8:15 ` Thomas Huth
2020-01-10 8:35 ` [PATCH 0/4] buildsys: Build quicker (mostly tools and linux-user) Laurent Vivier
2020-01-10 9:17 ` Philippe Mathieu-Daudé
2020-01-10 14:03 ` Laurent Vivier
2020-01-10 16:41 ` Philippe Mathieu-Daudé
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.