* [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS
@ 2011-08-10 10:04 Jiri Denemark
2011-08-10 12:46 ` Michael Roth
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Jiri Denemark @ 2011-08-10 10:04 UTC (permalink / raw)
To: qemu-devel
This patch fixes build when any of the include paths from QEMU_CFLAGS
contains a header file with similar name to a header file in qemu
sources. I hit it with error.h included by qapi/qapi-types-core.h. GCC
decided to use /usr/include/alsa/error.h instead of qemu's error.h.
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
---
rules.mak | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/rules.mak b/rules.mak
index 612ae37..1a2622c 100644
--- a/rules.mak
+++ b/rules.mak
@@ -15,21 +15,21 @@ MAKEFLAGS += -rR
QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d
%.o: %.c
- $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
+ $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
ifeq ($(LIBTOOL),)
%.lo: %.c
@echo "missing libtool. please install and rerun configure"; exit 1
else
%.lo: %.c
- $(call quiet-command,libtool --mode=compile --quiet --tag=CC $(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," lt CC $@")
+ $(call quiet-command,libtool --mode=compile --quiet --tag=CC $(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," lt CC $@")
endif
%.o: %.S
- $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," AS $(TARGET_DIR)$@")
+ $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," AS $(TARGET_DIR)$@")
%.o: %.m
- $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," OBJC $(TARGET_DIR)$@")
+ $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," OBJC $(TARGET_DIR)$@")
LINK = $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(1) $(LIBS)," LINK $(TARGET_DIR)$@")
--
1.7.6
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS
2011-08-10 10:04 [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS Jiri Denemark
@ 2011-08-10 12:46 ` Michael Roth
2011-08-10 13:04 ` Avi Kivity
2011-08-12 13:46 ` Anthony Liguori
2 siblings, 0 replies; 6+ messages in thread
From: Michael Roth @ 2011-08-10 12:46 UTC (permalink / raw)
To: Jiri Denemark; +Cc: qemu-devel
On 08/10/2011 05:04 AM, Jiri Denemark wrote:
> This patch fixes build when any of the include paths from QEMU_CFLAGS
> contains a header file with similar name to a header file in qemu
> sources. I hit it with error.h included by qapi/qapi-types-core.h. GCC
> decided to use /usr/include/alsa/error.h instead of qemu's error.h.
>
> Signed-off-by: Jiri Denemark<jdenemar@redhat.com>
> ---
> rules.mak | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/rules.mak b/rules.mak
> index 612ae37..1a2622c 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -15,21 +15,21 @@ MAKEFLAGS += -rR
> QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d
>
> %.o: %.c
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
>
> ifeq ($(LIBTOOL),)
> %.lo: %.c
> @echo "missing libtool. please install and rerun configure"; exit 1
> else
> %.lo: %.c
> - $(call quiet-command,libtool --mode=compile --quiet --tag=CC $(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," lt CC $@")
> + $(call quiet-command,libtool --mode=compile --quiet --tag=CC $(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," lt CC $@")
> endif
>
> %.o: %.S
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," AS $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," AS $(TARGET_DIR)$@")
>
> %.o: %.m
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," OBJC $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," OBJC $(TARGET_DIR)$@")
>
> LINK = $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(1) $(LIBS)," LINK $(TARGET_DIR)$@")
>
Nice, didn't realize the fix was that straightforward.
Tested-by: Michael Roth <mdroth@linux.vnet.ibm.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS
2011-08-10 10:04 [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS Jiri Denemark
2011-08-10 12:46 ` Michael Roth
@ 2011-08-10 13:04 ` Avi Kivity
2011-08-10 14:02 ` Jiri Denemark
2011-08-12 13:46 ` Anthony Liguori
2 siblings, 1 reply; 6+ messages in thread
From: Avi Kivity @ 2011-08-10 13:04 UTC (permalink / raw)
To: Jiri Denemark; +Cc: qemu-devel
On 08/10/2011 01:04 PM, Jiri Denemark wrote:
> This patch fixes build when any of the include paths from QEMU_CFLAGS
> contains a header file with similar name to a header file in qemu
> sources. I hit it with error.h included by qapi/qapi-types-core.h. GCC
> decided to use /usr/include/alsa/error.h instead of qemu's error.h.
>
> Signed-off-by: Jiri Denemark<jdenemar@redhat.com>
> ---
> rules.mak | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/rules.mak b/rules.mak
> index 612ae37..1a2622c 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -15,21 +15,21 @@ MAKEFLAGS += -rR
> QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d
>
> %.o: %.c
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
>
>
Shouldn't we use -isystem instead of -I for system headers?
--
error compiling committee.c: too many arguments to function
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS
2011-08-10 13:04 ` Avi Kivity
@ 2011-08-10 14:02 ` Jiri Denemark
2011-08-10 14:08 ` Avi Kivity
0 siblings, 1 reply; 6+ messages in thread
From: Jiri Denemark @ 2011-08-10 14:02 UTC (permalink / raw)
To: Avi Kivity; +Cc: qemu-devel
On Wed, Aug 10, 2011 at 16:04:15 +0300, Avi Kivity wrote:
> On 08/10/2011 01:04 PM, Jiri Denemark wrote:
> > This patch fixes build when any of the include paths from QEMU_CFLAGS
> > contains a header file with similar name to a header file in qemu
> > sources. I hit it with error.h included by qapi/qapi-types-core.h. GCC
> > decided to use /usr/include/alsa/error.h instead of qemu's error.h.
> >
> > Signed-off-by: Jiri Denemark<jdenemar@redhat.com>
> > ---
> > rules.mak | 8 ++++----
> > 1 files changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/rules.mak b/rules.mak
> > index 612ae37..1a2622c 100644
> > --- a/rules.mak
> > +++ b/rules.mak
> > @@ -15,21 +15,21 @@ MAKEFLAGS += -rR
> > QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d
> >
> > %.o: %.c
> > - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
> > + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
> >
> >
>
> Shouldn't we use -isystem instead of -I for system headers?
That would be ideal but unfortunately QEMU_CFLAGS also contains output of
pkg-config --cflags which uses -I for header paths. We would need to convert
them to -isystem. And is -isystem even portable to other compilers (in case we
care about that)?
IMHO just moving paths to qemu sources first is easier and the result is the
same.
Jirka
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS
2011-08-10 14:02 ` Jiri Denemark
@ 2011-08-10 14:08 ` Avi Kivity
0 siblings, 0 replies; 6+ messages in thread
From: Avi Kivity @ 2011-08-10 14:08 UTC (permalink / raw)
To: Jiri Denemark; +Cc: qemu-devel
On 08/10/2011 05:02 PM, Jiri Denemark wrote:
> >
> > Shouldn't we use -isystem instead of -I for system headers?
>
> That would be ideal but unfortunately QEMU_CFLAGS also contains output of
> pkg-config --cflags which uses -I for header paths. We would need to convert
> them to -isystem. And is -isystem even portable to other compilers (in case we
> care about that)?
Well, it's really a pkg-config bug. It should check whether -isystem is
supported and use it if so.
> IMHO just moving paths to qemu sources first is easier and the result is the
> same.
>
Agree.
--
error compiling committee.c: too many arguments to function
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS
2011-08-10 10:04 [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS Jiri Denemark
2011-08-10 12:46 ` Michael Roth
2011-08-10 13:04 ` Avi Kivity
@ 2011-08-12 13:46 ` Anthony Liguori
2 siblings, 0 replies; 6+ messages in thread
From: Anthony Liguori @ 2011-08-12 13:46 UTC (permalink / raw)
To: Jiri Denemark; +Cc: qemu-devel
On 08/10/2011 05:04 AM, Jiri Denemark wrote:
> This patch fixes build when any of the include paths from QEMU_CFLAGS
> contains a header file with similar name to a header file in qemu
> sources. I hit it with error.h included by qapi/qapi-types-core.h. GCC
> decided to use /usr/include/alsa/error.h instead of qemu's error.h.
Applied to master. Thanks.
Regards,
Anthony Liguori
>
> Signed-off-by: Jiri Denemark<jdenemar@redhat.com>
> ---
> rules.mak | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/rules.mak b/rules.mak
> index 612ae37..1a2622c 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -15,21 +15,21 @@ MAKEFLAGS += -rR
> QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d
>
> %.o: %.c
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," CC $(TARGET_DIR)$@")
>
> ifeq ($(LIBTOOL),)
> %.lo: %.c
> @echo "missing libtool. please install and rerun configure"; exit 1
> else
> %.lo: %.c
> - $(call quiet-command,libtool --mode=compile --quiet --tag=CC $(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," lt CC $@")
> + $(call quiet-command,libtool --mode=compile --quiet --tag=CC $(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," lt CC $@")
> endif
>
> %.o: %.S
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," AS $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," AS $(TARGET_DIR)$@")
>
> %.o: %.m
> - $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(QEMU_INCLUDES) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," OBJC $(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) $(QEMU_INCLUDES) $(QEMU_CFLAGS) $(QEMU_DGFLAGS) $(CFLAGS) -c -o $@ $<," OBJC $(TARGET_DIR)$@")
>
> LINK = $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(1) $(LIBS)," LINK $(TARGET_DIR)$@")
>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-08-12 13:46 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-10 10:04 [Qemu-devel] [PATCH STABLE] build: Move QEMU_INCLUDES before QEMU_CFLAGS Jiri Denemark
2011-08-10 12:46 ` Michael Roth
2011-08-10 13:04 ` Avi Kivity
2011-08-10 14:02 ` Jiri Denemark
2011-08-10 14:08 ` Avi Kivity
2011-08-12 13:46 ` Anthony Liguori
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).