qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH] ui/egl: Silent '__HAIKU__ undefined' warnin


From: Brad Smith
Subject: Re: [Qemu-devel] [RFC PATCH] ui/egl: Silent '__HAIKU__ undefined' warnings on OpenBSD 6.1
Date: Wed, 23 Jan 2019 21:03:27 -0500
User-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

https://cgit.freedesktop.org/mesa/mesa/commit/include/EGL/eglplatform.h?id=f744c6c1e28fe363474550b94af42a8b7fc1c755

Unfortunately that issue has only been fixed very recently.

There is a possibility of us updating from Mesa 17.3.9 to 18.3.x which
would bring in this header fix, but I don't know how long that will be
and it's currently held up on us switching i386 from bfd ld to lld.

So this header exists as is from 6.0 to the latest, most likely next release
(6.5) too.

Honestly I think it would be better to just ignore this particular issue. It's
an issue with a header outside of QEMU and it will go away in time when
Mesa is eventually updated.

On 1/23/2019 8:36 PM, Philippe Mathieu-Daudé wrote:
OpenBSD display various warnings about the use of an undefined __HAIKU__:

     CC      ui/egl-context.o
   In file included from /usr/X11R6/include/epoxy/egl_generated.h:10:0,
                    from /usr/X11R6/include/epoxy/egl.h:46,
                    from include/ui/egl-helpers.h:5,
                    from include/ui/egl-context.h:5,
                    from ui/egl-context.c:3:
   /usr/X11R6/include/EGL/eglplatform.h:128:7: warning: "__HAIKU__" is not 
defined [-Wundef]
    #elif __HAIKU__
          ^
   CC      ui/egl-helpers.o
/usr/X11R6/include/EGL/eglplatform.h:128:7: warning: "__HAIKU__" is not defined 
[-Wundef]
   CC      ui/egl-headless.o
/usr/X11R6/include/EGL/eglplatform.h:128:7: warning: "__HAIKU__" is not defined 
[-Wundef]

This is due to a old <epoxy/egl_generated.h>:

      70 #if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && 
!defined(__SCITECH_SNAP__) /* Win32 and WinCE */
         ...
     108 #elif defined(__unix__) || defined(__APPLE__)
     128 #elif __HAIKU__
     134 #else
     135 #error "Platform not recognized"
     136 #endif

Kludge this by adding a check to ./configure: if this warning occurs,
define __HAIKU__ from the CFLAGS.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
This is ugly, hopefully someone can come with a clever idea :)

  configure | 11 +++++++++++
  1 file changed, 11 insertions(+)

diff --git a/configure b/configure
index 8f312ac3e2..7c7eee44da 100755
--- a/configure
+++ b/configure
@@ -4036,6 +4036,17 @@ EOF
    if compile_prog "" "" ; then
      opengl_dmabuf=yes
    fi
+  cat > $TMPC << EOF
+#include <epoxy/egl.h>
+int main(void) { return 0; }
+EOF
+  if test "$targetos" = "OpenBSD" ; then
+    if ! compile_prog "-Wundef -Werror" "" ; then
+      if compile_prog "-Wundef -Werror -D__HAIKU__=0" "" ; then
+        QEMU_CFLAGS="$QEMU_CFLAGS -D__HAIKU__=0"
+      fi
+    fi
+  fi
  fi
##########################################



reply via email to

[Prev in Thread] Current Thread [Next in Thread]