Ensure that C99 macros are defined regardless of the inclusion order of
headers in vixl. This is required at least on NetBSD.
The vixl/globals.h headers defines __STDC_CONSTANT_MACROS and must be
included before other system headers.
This file defines unconditionally the following macros, without altering
the original sources:
- __STDC_CONSTANT_MACROS
- __STDC_LIMIT_MACROS
- __STDC_FORMAT_MACROS
Signed-off-by: Kamil Rytarowski <n54@gmx.com>
---
disas/libvixl/Makefile.objs | 3 +++
1 file changed, 3 insertions(+)
diff --git a/disas/libvixl/Makefile.objs b/disas/libvixl/Makefile.objs
index bbe7695fdb..860fb7f384 100644
--- a/disas/libvixl/Makefile.objs
+++ b/disas/libvixl/Makefile.objs
@@ -7,5 +7,8 @@ libvixl_OBJS = vixl/utils.o \
# The -Wno-sign-compare is needed only for gcc 4.6, which complains about
# some signed-unsigned equality comparisons which later gcc versions do not.
$(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS := -I$(SRC_PATH)/disas/libvixl $(QEMU_CFLAGS) -Wno-sign-compare
+# Ensure that C99 macros are defined regardless of the inclusion order of
+# headers in vixl. This is required at least on NetBSD.
+$(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS += -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS
common-obj-$(CONFIG_ARM_A64_DIS) += $(libvixl_OBJS)
--
2.12.2
On 05/14/2017 02:18 AM, Kamil Rytarowski wrote: > Ensure that C99 macros are defined regardless of the inclusion order of > headers in vixl. This is required at least on NetBSD. > > The vixl/globals.h headers defines __STDC_CONSTANT_MACROS and must be > included before other system headers. > > This file defines unconditionally the following macros, without altering > the original sources: > - __STDC_CONSTANT_MACROS > - __STDC_LIMIT_MACROS > - __STDC_FORMAT_MACROS > > Signed-off-by: Kamil Rytarowski <n54@gmx.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > disas/libvixl/Makefile.objs | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/disas/libvixl/Makefile.objs b/disas/libvixl/Makefile.objs > index bbe7695fdb..860fb7f384 100644 > --- a/disas/libvixl/Makefile.objs > +++ b/disas/libvixl/Makefile.objs > @@ -7,5 +7,8 @@ libvixl_OBJS = vixl/utils.o \ > # The -Wno-sign-compare is needed only for gcc 4.6, which complains about > # some signed-unsigned equality comparisons which later gcc versions do not. > $(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS := -I$(SRC_PATH)/disas/libvixl $(QEMU_CFLAGS) -Wno-sign-compare > +# Ensure that C99 macros are defined regardless of the inclusion order of > +# headers in vixl. This is required at least on NetBSD. > +$(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS += -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS > > common-obj-$(CONFIG_ARM_A64_DIS) += $(libvixl_OBJS) >
Can we please merge it with master? On 14.05.2017 07:41, Philippe Mathieu-Daudé wrote: > On 05/14/2017 02:18 AM, Kamil Rytarowski wrote: >> Ensure that C99 macros are defined regardless of the inclusion order of >> headers in vixl. This is required at least on NetBSD. >> >> The vixl/globals.h headers defines __STDC_CONSTANT_MACROS and must be >> included before other system headers. >> >> This file defines unconditionally the following macros, without altering >> the original sources: >> - __STDC_CONSTANT_MACROS >> - __STDC_LIMIT_MACROS >> - __STDC_FORMAT_MACROS >> >> Signed-off-by: Kamil Rytarowski <n54@gmx.com> > > Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > >> --- >> disas/libvixl/Makefile.objs | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/disas/libvixl/Makefile.objs b/disas/libvixl/Makefile.objs >> index bbe7695fdb..860fb7f384 100644 >> --- a/disas/libvixl/Makefile.objs >> +++ b/disas/libvixl/Makefile.objs >> @@ -7,5 +7,8 @@ libvixl_OBJS = vixl/utils.o \ >> # The -Wno-sign-compare is needed only for gcc 4.6, which complains >> about >> # some signed-unsigned equality comparisons which later gcc versions >> do not. >> $(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS := >> -I$(SRC_PATH)/disas/libvixl $(QEMU_CFLAGS) -Wno-sign-compare >> +# Ensure that C99 macros are defined regardless of the inclusion >> order of >> +# headers in vixl. This is required at least on NetBSD. >> +$(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS += >> -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS >> >> common-obj-$(CONFIG_ARM_A64_DIS) += $(libvixl_OBJS) >> >
On 14 May 2017 at 06:18, Kamil Rytarowski <n54@gmx.com> wrote: > Ensure that C99 macros are defined regardless of the inclusion order of > headers in vixl. This is required at least on NetBSD. > > The vixl/globals.h headers defines __STDC_CONSTANT_MACROS and must be > included before other system headers. > > This file defines unconditionally the following macros, without altering > the original sources: > - __STDC_CONSTANT_MACROS > - __STDC_LIMIT_MACROS > - __STDC_FORMAT_MACROS > > Signed-off-by: Kamil Rytarowski <n54@gmx.com> > --- > disas/libvixl/Makefile.objs | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/disas/libvixl/Makefile.objs b/disas/libvixl/Makefile.objs > index bbe7695fdb..860fb7f384 100644 > --- a/disas/libvixl/Makefile.objs > +++ b/disas/libvixl/Makefile.objs > @@ -7,5 +7,8 @@ libvixl_OBJS = vixl/utils.o \ > # The -Wno-sign-compare is needed only for gcc 4.6, which complains about > # some signed-unsigned equality comparisons which later gcc versions do not. > $(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS := -I$(SRC_PATH)/disas/libvixl $(QEMU_CFLAGS) -Wno-sign-compare > +# Ensure that C99 macros are defined regardless of the inclusion order of > +# headers in vixl. This is required at least on NetBSD. > +$(addprefix $(obj)/,$(libvixl_OBJS)): QEMU_CFLAGS += -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS Thanks for this patch -- I have applied it to target-arm.next. I've also reported the underlying libvixl bug upstream so hopefully it will be fixed in a future libvixl version too. thanks -- PMM
© 2016 - 2024 Red Hat, Inc.