qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [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).