Commit fb719563 authored by OGAWA Hirofumi's avatar OGAWA Hirofumi Committed by Gerd Hoffmann
Browse files

ui/opengl: Reduce build required libraries for opengl



We now use epoxy to load opengl libraries. This means we don't need to
link opengl libraries directly if interfaces handled by epoxy. With
this, we just need epoxy headers and epoxy's *.so to build.

Tested with epoxy-1.3.1.

- sdl2/gtk/console egl stuff doesn't require other than epoxy
- milkymist-tmu2 glx stuff doesn't require other than epoxy

(lm32 test is limited, because can't find mmone-bios.bin, so just test
to load libGL with "./lm32-softmmu/qemu-system-lm32 -M milkymist,accel=qtest")

Signed-off-by: default avatarOGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

[ lm32 tested by kraxel ]

Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
parent e72df72a
Loading
Loading
Loading
Loading
+3 −17
Original line number Diff line number Diff line
@@ -3286,25 +3286,11 @@ fi
libs_softmmu="$libs_softmmu $fdt_libs"

##########################################
# opengl probe (for sdl2, milkymist-tmu2)

# GLX probe, used by milkymist-tmu2
# this is temporary, code will be switched to egl mid-term.
cat > $TMPC << EOF
#include <X11/Xlib.h>
#include <GL/gl.h>
#include <GL/glx.h>
int main(void) { glBegin(0); glXQueryVersion(0,0,0); return 0; }
EOF
if compile_prog "" "-lGL -lX11" ; then
  have_glx=yes
else
  have_glx=no
fi
# opengl probe (for sdl2, gtk, milkymist-tmu2)

if test "$opengl" != "no" ; then
  opengl_pkgs="gl glesv2 epoxy egl"
  if $pkg_config $opengl_pkgs x11 && test "$have_glx" = "yes"; then
  opengl_pkgs="epoxy"
  if $pkg_config $opengl_pkgs x11; then
    opengl_cflags="$($pkg_config --cflags $opengl_pkgs) $x11_cflags"
    opengl_libs="$($pkg_config --libs $opengl_pkgs) $x11_libs"
    opengl=yes
+2 −2
Original line number Diff line number Diff line
@@ -30,8 +30,8 @@
#include "qemu/error-report.h"

#include <X11/Xlib.h>
#include <GL/gl.h>
#include <GL/glx.h>
#include <epoxy/gl.h>
#include <epoxy/glx.h>

enum {
    R_CTL = 0,
+2 −1
Original line number Diff line number Diff line
@@ -88,7 +88,8 @@ static inline DeviceState *milkymist_pfpu_create(hwaddr base,

#ifdef CONFIG_OPENGL
#include <X11/Xlib.h>
#include <GL/glx.h>
#include <epoxy/gl.h>
#include <epoxy/glx.h>
static const int glx_fbconfig_attr[] = {
    GLX_GREEN_SIZE, 5,
    GLX_GREEN_SIZE, 6,