summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2015-08-28 15:57:38 -0700
committerMatt Turner <mattst88@gmail.com>2015-09-21 10:29:11 -0700
commit74443c6ee79f3251f643ea05e94df58183e37d0d (patch)
tree061ccfa9d78070bb1cca7d3a7b62cd05d28a8752
parentc62dd9c58c8d63dcb522f29306008cb0754b6506 (diff)
downloadmesa-demos-74443c6ee79f3251f643ea05e94df58183e37d0d.zip
mesa-demos-74443c6ee79f3251f643ea05e94df58183e37d0d.tar.xz
egl: Remove demos using EGL_MESA_screen_surface.
The remnants of the extension were removed from Mesa in commit 7a58262e. Reviewed-by: Andreas Boll <andreas.boll.dev@gmail.com> Tested-by: Andreas Boll <andreas.boll.dev@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
-rw-r--r--src/egl/eglut/CMakeLists.txt6
-rw-r--r--src/egl/eglut/Makefile.am10
-rw-r--r--src/egl/eglut/eglut.c8
-rw-r--r--src/egl/eglut/eglut_screen.c180
-rw-r--r--src/egl/opengl/.gitignore6
-rw-r--r--src/egl/opengl/CMakeLists.txt17
-rw-r--r--src/egl/opengl/Makefile.am11
-rw-r--r--src/egl/opengl/demo1.c147
-rw-r--r--src/egl/opengl/demo2.c216
-rw-r--r--src/egl/opengl/demo3.c647
-rw-r--r--src/egl/opengl/eglinfo.c45
-rw-r--r--src/egl/opengl/eglscreen.c120
-rw-r--r--src/egl/opengles1/.gitignore4
-rw-r--r--src/egl/opengles1/CMakeLists.txt4
-rw-r--r--src/egl/opengles1/Makefile.am14
-rw-r--r--src/egl/opengles2/.gitignore1
-rw-r--r--src/egl/opengles2/CMakeLists.txt4
-rw-r--r--src/egl/opengles2/Makefile.am7
-rw-r--r--src/egl/openvg/.gitignore2
-rw-r--r--src/egl/openvg/CMakeLists.txt4
-rw-r--r--src/egl/openvg/Makefile.am8
21 files changed, 6 insertions, 1455 deletions
diff --git a/src/egl/eglut/CMakeLists.txt b/src/egl/eglut/CMakeLists.txt
index a885977..0417b48 100644
--- a/src/egl/eglut/CMakeLists.txt
+++ b/src/egl/eglut/CMakeLists.txt
@@ -9,9 +9,3 @@ if (X11_FOUND)
install (TARGETS eglut_x11 DESTINATION ${LIBDIR})
endif (BUILD_SHARED_LIBS)
endif (X11_FOUND)
-
-add_library (eglut_screen eglut.h eglut.c eglutint.h eglut_screen.c)
-target_link_libraries (eglut_screen ${EGL_LIBRARIES})
-if (BUILD_SHARED_LIBS)
- install (TARGETS eglut_screen DESTINATION ${LIBDIR})
-endif (BUILD_SHARED_LIBS)
diff --git a/src/egl/eglut/Makefile.am b/src/egl/eglut/Makefile.am
index 2d2f2af..b765069 100644
--- a/src/egl/eglut/Makefile.am
+++ b/src/egl/eglut/Makefile.am
@@ -33,17 +33,12 @@ if HAVE_WAYLAND
eglut_wayland = libeglut_wayland.la
endif
-noinst_LTLIBRARIES = libeglut_screen.la $(eglut_x11) $(eglut_wayland)
+noinst_LTLIBRARIES = $(eglut_x11) $(eglut_wayland)
endif
-libeglut_screen_la_SOURCES = \
- eglut.c \
- eglut.h \
- eglutint.h \
- eglut_screen.c
-
libeglut_x11_la_SOURCES = \
eglut.c \
+ eglut.h \
eglutint.h \
eglut_x11.c
libeglut_x11_la_CFLAGS = $(X11_CFLAGS) $(EGL_CFLAGS)
@@ -52,6 +47,7 @@ libeglut_x11_la_LIBADD = $(X11_LIBS) $(EGL_LIBS)
libeglut_wayland_la_SOURCES = \
eglut.c \
+ eglut.h \
eglutint.h \
eglut_wayland.c
diff --git a/src/egl/eglut/eglut.c b/src/egl/eglut/eglut.c
index 2ee6f15..9921746 100644
--- a/src/egl/eglut/eglut.c
+++ b/src/egl/eglut/eglut.c
@@ -76,8 +76,7 @@ _eglutNow(void)
static void
_eglutDestroyWindow(struct eglut_window *win)
{
- if (_eglut->surface_type != EGL_PBUFFER_BIT &&
- _eglut->surface_type != EGL_SCREEN_BIT_MESA)
+ if (_eglut->surface_type != EGL_PBUFFER_BIT)
eglDestroySurface(_eglut->dpy, win->surface);
_eglutNativeFiniWindow(win);
@@ -175,7 +174,6 @@ _eglutCreateWindow(const char *title, int x, int y, int w, int h)
win->config, win->native.u.pixmap, NULL);
break;
case EGL_PBUFFER_BIT:
- case EGL_SCREEN_BIT_MESA:
win->surface = win->native.u.surface;
break;
default:
@@ -289,9 +287,7 @@ eglutDestroyWindow(int win)
if (window->index != win)
return;
- /* XXX it causes some bug in st/egl KMS backend */
- if ( _eglut->surface_type != EGL_SCREEN_BIT_MESA)
- eglMakeCurrent(_eglut->dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
+ eglMakeCurrent(_eglut->dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
_eglutDestroyWindow(_eglut->current);
}
diff --git a/src/egl/eglut/eglut_screen.c b/src/egl/eglut/eglut_screen.c
deleted file mode 100644
index 021a8f1..0000000
--- a/src/egl/eglut/eglut_screen.c
+++ /dev/null
@@ -1,180 +0,0 @@
-/*
- * Copyright (C) 2010 LunarG Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
- * Authors:
- * Chia-I Wu <olv@lunarg.com>
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <sys/time.h>
-
-#define EGL_EGLEXT_PROTOTYPES
-#include "EGL/egl.h"
-#include "EGL/eglext.h"
-
-#include "eglutint.h"
-
-#define MAX_MODES 100
-
-static EGLScreenMESA kms_screen;
-static EGLModeMESA kms_mode;
-static EGLint kms_width, kms_height;
-
-void
-_eglutNativeInitDisplay(void)
-{
- _eglut->native_dpy = EGL_DEFAULT_DISPLAY;
- _eglut->surface_type = EGL_SCREEN_BIT_MESA;
-}
-
-void
-_eglutNativeFiniDisplay(void)
-{
- kms_screen = 0;
- kms_mode = 0;
- kms_width = 0;
- kms_height = 0;
-}
-
-static void
-init_kms(void)
-{
- EGLModeMESA modes[MAX_MODES];
- EGLint num_screens, num_modes;
- EGLint width, height, best_mode;
- EGLint i;
-
- if (!eglGetScreensMESA(_eglut->dpy, &kms_screen, 1, &num_screens) ||
- !num_screens)
- _eglutFatal("eglGetScreensMESA failed\n");
-
- if (!eglGetModesMESA(_eglut->dpy, kms_screen,
- modes, MAX_MODES, &num_modes) || !num_modes)
- _eglutFatal("eglGetModesMESA failed!\n");
-
- printf("Found %d modes:\n", num_modes);
-
- best_mode = 0;
- width = 0;
- height = 0;
- for (i = 0; i < num_modes; i++) {
- EGLint w, h;
- eglGetModeAttribMESA(_eglut->dpy, modes[i], EGL_WIDTH, &w);
- eglGetModeAttribMESA(_eglut->dpy, modes[i], EGL_HEIGHT, &h);
- printf("%3d: %d x %d\n", i, w, h);
- if (w > width && h > height) {
- width = w;
- height = h;
- best_mode = i;
- }
- }
-
- printf("Will use screen size: %d x %d\n", width, height);
-
- kms_mode = modes[best_mode];
- kms_width = width;
- kms_height = height;
-}
-
-void
-_eglutNativeInitWindow(struct eglut_window *win, const char *title,
- int x, int y, int w, int h)
-{
- EGLint surf_attribs[16];
- EGLint i;
- const char *exts;
-
- exts = eglQueryString(_eglut->dpy, EGL_EXTENSIONS);
- if (!exts || !strstr(exts, "EGL_MESA_screen_surface"))
- _eglutFatal("EGL_MESA_screen_surface is not supported\n");
-
- init_kms();
-
- i = 0;
- surf_attribs[i++] = EGL_WIDTH;
- surf_attribs[i++] = kms_width;
- surf_attribs[i++] = EGL_HEIGHT;
- surf_attribs[i++] = kms_height;
- surf_attribs[i++] = EGL_NONE;
-
- /* create surface */
- win->native.u.surface = eglCreateScreenSurfaceMESA(_eglut->dpy,
- win->config, surf_attribs);
- if (win->native.u.surface == EGL_NO_SURFACE)
- _eglutFatal("eglCreateScreenSurfaceMESA failed\n");
-
- if (!eglShowScreenSurfaceMESA(_eglut->dpy, kms_screen,
- win->native.u.surface, kms_mode))
- _eglutFatal("eglShowScreenSurfaceMESA failed\n");
-
- win->native.width = kms_width;
- win->native.height = kms_height;
-}
-
-void
-_eglutNativeFiniWindow(struct eglut_window *win)
-{
- eglShowScreenSurfaceMESA(_eglut->dpy,
- kms_screen, EGL_NO_SURFACE, 0);
- eglDestroySurface(_eglut->dpy, win->native.u.surface);
-}
-
-void
-_eglutNativeEventLoop(void)
-{
- int start = _eglutNow();
- int frames = 0;
-
- _eglut->redisplay = 1;
-
- while (1) {
- struct eglut_window *win = _eglut->current;
- int now = _eglutNow();
-
- if (now - start > 5000) {
- double elapsed = (double) (now - start) / 1000.0;
-
- printf("%d frames in %3.1f seconds = %6.3f FPS\n",
- frames, elapsed, frames / elapsed);
- fflush(stdout);
-
- start = now;
- frames = 0;
-
- /* send escape */
- if (win->keyboard_cb)
- win->keyboard_cb(27);
- }
-
- if (_eglut->idle_cb)
- _eglut->idle_cb();
-
- if (_eglut->redisplay) {
- _eglut->redisplay = 0;
-
- if (win->display_cb)
- win->display_cb();
- eglSwapBuffers(_eglut->dpy, win->surface);
- frames++;
- }
- }
-}
diff --git a/src/egl/opengl/.gitignore b/src/egl/opengl/.gitignore
index e2bc4d2..930504c 100644
--- a/src/egl/opengl/.gitignore
+++ b/src/egl/opengl/.gitignore
@@ -1,13 +1,7 @@
-demo1
-demo2
-demo3
eglgears_x11
-eglgears_screen
eglinfo
eglkms
-eglscreen
egltri_x11
-egltri_screen
peglgears
xeglbindtex
xeglgears
diff --git a/src/egl/opengl/CMakeLists.txt b/src/egl/opengl/CMakeLists.txt
index 04fb6dd..dd726b7 100644
--- a/src/egl/opengl/CMakeLists.txt
+++ b/src/egl/opengl/CMakeLists.txt
@@ -12,19 +12,6 @@ link_libraries (
set (subdir egl)
-set (targets
- demo1
- demo2
- demo3
-)
-
-foreach (target ${targets})
- add_executable (${subdir}_${target} ${target}.c)
- set_target_properties (${subdir}_${target} PROPERTIES OUTPUT_NAME ${target})
- install (TARGETS ${subdir}_${target} DESTINATION ${subdir})
-endforeach (target)
-
-
# Targets that can be built both for fullscreen EGL and X11
set (targets
@@ -33,10 +20,6 @@ set (targets
)
foreach (target ${targets})
- add_executable (${target}_screen ${target}.c)
- target_link_libraries (${target}_screen eglut_screen)
- install (TARGETS ${target}_screen DESTINATION ${subdir})
-
if (X11_FOUND)
add_executable (${target}_x11 ${target}.c)
target_link_libraries (${target}_x11 eglut_x11)
diff --git a/src/egl/opengl/Makefile.am b/src/egl/opengl/Makefile.am
index 0c7228f..fe7faa9 100644
--- a/src/egl/opengl/Makefile.am
+++ b/src/egl/opengl/Makefile.am
@@ -51,20 +51,12 @@ endif
if HAVE_EGL
noinst_PROGRAMS = \
- demo1 \
- demo2 \
- demo3 \
eglinfo \
- eglgears_screen \
- egltri_screen \
peglgears \
$(EGL_DRM_DEMOS) \
$(EGL_X11_DEMOS)
endif
-egltri_screen_SOURCES = egltri.c
-eglgears_screen_SOURCES = eglgears.c
-
egltri_x11_SOURCES = egltri.c
eglgears_x11_SOURCES = eglgears.c
@@ -73,9 +65,6 @@ egltri_x11_LDFLAGS = $(AM_LDFLAGS) $(X11_LIBS)
xeglgears_LDFLAGS = $(AM_LDFLAGS) $(X11_LIBS)
xeglthreads_LDFLAGS = $(AM_LDFLAGS) $(X11_LIBS) -pthread
-eglgears_screen_LDADD = ../eglut/libeglut_screen.la
-egltri_screen_LDADD = ../eglut/libeglut_screen.la
-
eglgears_x11_LDADD = ../eglut/libeglut_x11.la
egltri_x11_LDADD = ../eglut/libeglut_x11.la
diff --git a/src/egl/opengl/demo1.c b/src/egl/opengl/demo1.c
deleted file mode 100644
index d892734..0000000
--- a/src/egl/opengl/demo1.c
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Exercise EGL API functions
- */
-
-#define EGL_EGLEXT_PROTOTYPES
-
-#include <EGL/egl.h>
-#include <EGL/eglext.h>
-#include <assert.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-
-/**
- * Test EGL_MESA_screen_surface functions
- */
-static void
-TestScreens(EGLDisplay dpy)
-{
-#define MAX 8
- EGLScreenMESA screens[MAX];
- EGLint numScreens;
- EGLint i;
-
- eglGetScreensMESA(dpy, screens, MAX, &numScreens);
- printf("Found %d screens\n", numScreens);
- for (i = 0; i < numScreens; i++) {
- printf(" Screen %d handle: %d\n", i, (int) screens[i]);
- }
-}
-
-/**
- * Print table of all available configurations.
- */
-static void
-PrintConfigs(EGLDisplay d, EGLConfig *configs, EGLint numConfigs)
-{
- EGLint i;
-
- printf("Configurations:\n");
- printf(" bf lv d st colorbuffer dp st supported \n");
- printf(" id sz l b ro r g b a th cl surfaces \n");
- printf("----------------------------------------------\n");
- for (i = 0; i < numConfigs; i++) {
- EGLint id, size, level;
- EGLint red, green, blue, alpha;
- EGLint depth, stencil;
- EGLint surfaces;
- EGLint doubleBuf = 1, stereo = 0;
- char surfString[100] = "";
-
- eglGetConfigAttrib(d, configs[i], EGL_CONFIG_ID, &id);
- eglGetConfigAttrib(d, configs[i], EGL_BUFFER_SIZE, &size);
- eglGetConfigAttrib(d, configs[i], EGL_LEVEL, &level);
-
- eglGetConfigAttrib(d, configs[i], EGL_RED_SIZE, &red);
- eglGetConfigAttrib(d, configs[i], EGL_GREEN_SIZE, &green);
- eglGetConfigAttrib(d, configs[i], EGL_BLUE_SIZE, &blue);
- eglGetConfigAttrib(d, configs[i], EGL_ALPHA_SIZE, &alpha);
- eglGetConfigAttrib(d, configs[i], EGL_DEPTH_SIZE, &depth);
- eglGetConfigAttrib(d, configs[i], EGL_STENCIL_SIZE, &stencil);
- eglGetConfigAttrib(d, configs[i], EGL_SURFACE_TYPE, &surfaces);
-
- if (surfaces & EGL_WINDOW_BIT)
- strcat(surfString, "win,");
- if (surfaces & EGL_PBUFFER_BIT)
- strcat(surfString, "pb,");
- if (surfaces & EGL_PIXMAP_BIT)
- strcat(surfString, "pix,");
- if (strlen(surfString) > 0)
- surfString[strlen(surfString) - 1] = 0;
-
- printf("0x%02x %2d %2d %c %c %2d %2d %2d %2d %2d %2d %-12s\n",
- id, size, level,
- doubleBuf ? 'y' : '.',
- stereo ? 'y' : '.',
- red, green, blue, alpha,
- depth, stencil, surfString);
- }
-}
-
-
-
-int
-main(int argc, char *argv[])
-{
- int maj, min;
- EGLContext ctx;
- EGLSurface pbuffer;
- EGLConfig *configs;
- EGLint numConfigs;
- EGLBoolean b;
- const EGLint pbufAttribs[] = {
- EGL_WIDTH, 500,
- EGL_HEIGHT, 500,
- EGL_NONE
- };
-
- EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
- assert(d);
-
- if (!eglInitialize(d, &maj, &min)) {
- printf("demo: eglInitialize failed\n");
- exit(1);
- }
-
- printf("EGL version = %d.%d\n", maj, min);
- printf("EGL_VENDOR = %s\n", eglQueryString(d, EGL_VENDOR));
-
- eglGetConfigs(d, NULL, 0, &numConfigs);
- configs = malloc(sizeof(*configs) *numConfigs);
- eglGetConfigs(d, configs, numConfigs, &numConfigs);
-
- PrintConfigs(d, configs, numConfigs);
-
- eglBindAPI(EGL_OPENGL_API);
- ctx = eglCreateContext(d, configs[0], EGL_NO_CONTEXT, NULL);
- if (ctx == EGL_NO_CONTEXT) {
- printf("failed to create context\n");
- return 0;
- }
-
- pbuffer = eglCreatePbufferSurface(d, configs[0], pbufAttribs);
- if (pbuffer == EGL_NO_SURFACE) {
- printf("failed to create pbuffer\n");
- return 0;
- }
-
- free(configs);
-
- b = eglMakeCurrent(d, pbuffer, pbuffer, ctx);
- if (!b) {
- printf("make current failed\n");
- return 0;
- }
-
- b = eglMakeCurrent(d, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
-
- TestScreens(d);
-
- eglDestroySurface(d, pbuffer);
- eglDestroyContext(d, ctx);
- eglTerminate(d);
-
- return 0;
-}
diff --git a/src/egl/opengl/demo2.c b/src/egl/opengl/demo2.c
deleted file mode 100644
index 505b474..0000000
--- a/src/egl/opengl/demo2.c
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * Exercise EGL API functions
- */
-
-#define EGL_EGLEXT_PROTOTYPES
-
-#include <assert.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-#include <EGL/egl.h>
-#include <EGL/eglext.h>
-#include "gl_wrap.h"
-
-/*#define FRONTBUFFER*/
-
-static void _subset_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2,
- GLfloat r, GLfloat g, GLfloat b)
-{
- GLfloat v[4][2], c[4][4];
- int i;
-
- v[0][0] = x1; v[0][1] = y1;
- v[1][0] = x2; v[1][1] = y1;
- v[2][0] = x2; v[2][1] = y2;
- v[3][0] = x1; v[3][1] = y2;
-
- for (i = 0; i < 4; i++) {
- c[i][0] = r;
- c[i][1] = g;
- c[i][2] = b;
- c[i][3] = 1.0;
- }
-
- glVertexPointer(2, GL_FLOAT, 0, v);
- glColorPointer(4, GL_FLOAT, 0, c);
- glEnableClientState(GL_VERTEX_ARRAY);
- glEnableClientState(GL_COLOR_ARRAY);
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
-
- glDisableClientState(GL_VERTEX_ARRAY);
- glDisableClientState(GL_COLOR_ARRAY);
-}
-
-
-static void redraw(EGLDisplay dpy, EGLSurface surf, int rot)
-{
- GLfloat r, g, b;
-
- printf("Redraw event\n");
-
- glClearColor( rand()/(float)RAND_MAX,
- rand()/(float)RAND_MAX,
- rand()/(float)RAND_MAX,
- 1);
-
- glClear( GL_COLOR_BUFFER_BIT );
-
- r = rand()/(float)RAND_MAX;
- g = rand()/(float)RAND_MAX;
- b = rand()/(float)RAND_MAX;
-
- glPushMatrix();
- glRotatef(rot, 0, 0, 1);
- glScalef(.5, .5, .5);
- _subset_Rectf( -1, -1, 1, 1, r, g, b );
- glPopMatrix();
-
-#ifdef FRONTBUFFER
- glFlush();
-#else
- eglSwapBuffers( dpy, surf );
-#endif
- glFinish();
-}
-
-
-/**
- * Test EGL_MESA_screen_surface functions
- */
-static void
-TestScreens(EGLDisplay dpy)
-{
-#define MAX 8
- EGLScreenMESA screens[MAX];
- EGLint numScreens;
- EGLint i;
-
- eglGetScreensMESA(dpy, screens, MAX, &numScreens);
- printf("Found %d screens\n", numScreens);
- for (i = 0; i < numScreens; i++) {
- printf(" Screen %d handle: %d\n", i, (int) screens[i]);
- }
-}
-
-
-int
-main(int argc, char *argv[])
-{
- int maj, min;
- EGLContext ctx;
- EGLSurface pbuffer, screen_surf;
- EGLConfig configs[10];
- EGLint numConfigs, i;
- EGLBoolean b;
- const EGLint pbufAttribs[] = {
- EGL_WIDTH, 500,
- EGL_HEIGHT, 500,
- EGL_NONE
- };
- EGLint screenAttribs[32];
- EGLModeMESA mode;
- EGLScreenMESA screen;
- EGLint count;
-
- EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
- assert(d);
-
- if (!eglInitialize(d, &maj, &min)) {
- printf("demo: eglInitialize failed\n");
- exit(1);
- }
-
- printf("EGL version = %d.%d\n", maj, min);
- printf("EGL_VENDOR = %s\n", eglQueryString(d, EGL_VENDOR));
- if (!strstr(eglQueryString(d, EGL_EXTENSIONS),
- "EGL_MESA_screen_surface")) {
- printf("EGL_MESA_screen_surface is not supported\n");
- exit(1);
- }
-
- eglGetConfigs(d, configs, 10, &numConfigs);
- printf("Got %d EGL configs:\n", numConfigs);
- for (i = 0; i < numConfigs; i++) {
- EGLint id, red, depth;
- eglGetConfigAttrib(d, configs[i], EGL_CONFIG_ID, &id);
- eglGetConfigAttrib(d, configs[i], EGL_RED_SIZE, &red);
- eglGetConfigAttrib(d, configs[i], EGL_DEPTH_SIZE, &depth);
- printf("%2d: Red Size = %d Depth Size = %d\n", id, red, depth);
- }
-
- eglGetScreensMESA(d, &screen, 1, &count);
- eglGetModesMESA(d, screen, &mode, 1, &count);
-
- eglBindAPI(EGL_OPENGL_API);
- ctx = eglCreateContext(d, configs[0], EGL_NO_CONTEXT, NULL);
- if (ctx == EGL_NO_CONTEXT) {
- printf("failed to create context\n");
- return 0;
- }
-
- pbuffer = eglCreatePbufferSurface(d, configs[0], pbufAttribs);
- if (pbuffer == EGL_NO_SURFACE) {
- printf("failed to create pbuffer\n");
- return 0;
- }
-
- b = eglMakeCurrent(d, pbuffer, pbuffer, ctx);
- if (!b) {
- printf("make current failed\n");
- return 0;
- }
-
- b = eglMakeCurrent(d, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
-
- i = 0;
- screenAttribs[i++] = EGL_WIDTH;
- eglGetModeAttribMESA(d, mode, EGL_WIDTH, &screenAttribs[i++]);
- screenAttribs[i++] = EGL_HEIGHT;
- eglGetModeAttribMESA(d, mode, EGL_HEIGHT, &screenAttribs[i++]);
- screenAttribs[i] = EGL_NONE;
-
- screen_surf = eglCreateScreenSurfaceMESA(d, configs[0], screenAttribs);
- if (screen_surf == EGL_NO_SURFACE) {
- printf("failed to create screen surface\n");
- return 0;
- }
-
- eglShowScreenSurfaceMESA(d, screen, screen_surf, mode);
-
- b = eglMakeCurrent(d, screen_surf, screen_surf, ctx);
- if (!b) {
- printf("make current failed\n");
- return 0;
- }
-
- glViewport(0, 0, 1024, 768);
-
- glClearColor( 0,
- 1.0,
- 0,
- 1);
-
- glClear( GL_COLOR_BUFFER_BIT );
-
-
- TestScreens(d);
-
- glShadeModel( GL_FLAT );
-
- for (i = 0; i < 6; i++) {
- redraw(d, screen_surf, i*10 );
-
- printf("sleep(1)\n");
- sleep(1);
- }
-
- eglDestroySurface(d, pbuffer);
- eglDestroyContext(d, ctx);
- eglTerminate(d);
-
- return 0;
-}
diff --git a/src/egl/opengl/demo3.c b/src/egl/opengl/demo3.c
deleted file mode 100644
index f84ca23..0000000
--- a/src/egl/opengl/demo3.c
+++ /dev/null
@@ -1,647 +0,0 @@
-/*
- * Exercise EGL API functions
- */
-
-#define EGL_EGLEXT_PROTOTYPES
-
-#include <EGL/egl.h>
-#include <EGL/eglext.h>
-#include "gl_wrap.h"
-#include <assert.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-
-
-#define PIXEL_CENTER(x) ((long)(x) + 0.5)
-
-#define GAP 10
-#define ROWS 3
-#define COLS 4
-
-#define OPENGL_WIDTH 48
-#define OPENGL_HEIGHT 13
-
-
-GLenum rgb, doubleBuffer, windType;
-GLint windW, windH;
-
-GLenum mode1, mode2;
-GLint boxW, boxH;
-GLubyte OpenGL_bits[] = {
- 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
- 0x7f, 0xfb, 0xff, 0xff, 0xff, 0x01,
- 0x7f, 0xfb, 0xff, 0xff, 0xff, 0x01,
- 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
- 0x3e, 0x8f, 0xb7, 0xf9, 0xfc, 0x01,
- 0x63, 0xdb, 0xb0, 0x8d, 0x0d, 0x00,
- 0x63, 0xdb, 0xb7, 0x8d, 0x0d, 0x00,
- 0x63, 0xdb, 0xb6, 0x8d, 0x0d, 0x00,
- 0x63, 0x8f, 0xf3, 0xcc, 0x0d, 0x00,
- 0x63, 0x00, 0x00, 0x0c, 0x4c, 0x0a,
- 0x63, 0x00, 0x00, 0x0c, 0x4c, 0x0e,
- 0x63, 0x00, 0x00, 0x8c, 0xed, 0x0e,
- 0x3e, 0x00, 0x00, 0xf8, 0x0c, 0x00,
-};
-
-
-static void Init(void)
-{
-
- mode1 = GL_TRUE;
- mode2 = GL_TRUE;
-}
-
-static void Reshape(int width, int height)
-{
-
- windW = (GLint)width;
- windH = (GLint)height;
-}
-
-#if 0
-static void RotateColorMask(void)
-{
- static GLint rotation = 0;
-
- rotation = (rotation + 1) & 0x3;
- switch (rotation) {
- case 0:
- glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
- glIndexMask( 0xff );
- break;
- case 1:
- glColorMask(GL_FALSE, GL_TRUE, GL_TRUE, GL_TRUE);
- glIndexMask(0xFE);
- break;
- case 2:
- glColorMask(GL_TRUE, GL_FALSE, GL_TRUE, GL_TRUE);
- glIndexMask(0xFD);
- break;
- case 3:
- glColorMask(GL_TRUE, GL_TRUE, GL_FALSE, GL_TRUE);
- glIndexMask(0xFB);
- break;
- }
-}
-#endif
-
-static void Viewport(GLint row, GLint column)
-{
- GLint x, y;
-
- boxW = (windW - (COLS + 1) * GAP) / COLS;
- boxH = (windH - (ROWS + 1) * GAP) / ROWS;
-
- x = GAP + column * (boxW + GAP);
- y = GAP + row * (boxH + GAP);
-
- glViewport(x, y, boxW, boxH);
-
- glMatrixMode(GL_PROJECTION);
- glLoadIdentity();
- glOrtho(-boxW/2, boxW/2, -boxH/2, boxH/2, 0.0, 1.0);
- glMatrixMode(GL_MODELVIEW);
-
- glEnable(GL_SCISSOR_TEST);
- glScissor(x, y, boxW, boxH);
-}
-
-enum {
- COLOR_BLACK = 0,
- COLOR_RED,
- COLOR_GREEN,
- COLOR_YELLOW,
- COLOR_BLUE,
- COLOR_MAGENTA,
- COLOR_CYAN,
- COLOR_WHITE
-};
-
-static float RGBMap[9][3] = {
- {0, 0, 0},
- {1, 0, 0},
- {0, 1, 0},
- {1, 1, 0},
- {0, 0, 1},
- {1, 0, 1},
- {0, 1, 1},
- {1, 1, 1},
- {0.5, 0.5, 0.5}
-};
-
-static void SetColor(int c)
-{
- glColor3fv(RGBMap[c]);
-}
-
-static void Point(void)
-{
- GLint i;
-
- glBegin(GL_POINTS);
- SetColor(COLOR_WHITE);
- glVertex2i(0, 0);
- for (i = 1; i < 8; i++) {
- GLint j = i * 2;
- SetColor(COLOR_BLACK+i);
- glVertex2i(-j, -j);
- glVertex2i(-j, 0);
- glVertex2i(-j, j);
- glVertex2i(0, j);
- glVertex2i(j, j);
- glVertex2i(j, 0);
- glVertex2i(j, -j);
- glVertex2i(0, -j);
- }
- glEnd();
-}
-
-static void Lines(void)
-{
- GLint i;
-
- glPushMatrix();
-
- glTranslatef(-12, 0, 0);
- for (i = 1; i < 8; i++) {
- SetColor(COLOR_BLACK+i);
- glBegin(GL_LINES);
- glVertex2i(-boxW/4, -boxH/4);
- glVertex2i(boxW/4, boxH/4);
- glEnd();
- glTranslatef(4, 0, 0);
- }
-
- glPopMatrix();
-
- glBegin(GL_LINES);
- glVertex2i(0, 0);
- glEnd();
-}
-
-static void LineStrip(void)
-{
-
- glBegin(GL_LINE_STRIP);
- SetColor(COLOR_RED);
- glVertex2f(PIXEL_CENTER(-boxW/4), PIXEL_CENTER(-boxH/4));
- SetColor(COLOR_GREEN);
- glVertex2f(PIXEL_CENTER(-boxW/4), PIXEL_CENTER(boxH/4));
- SetColor(COLOR_BLUE);
- glVertex2f(PIXEL_CENTER(boxW/4), PIXEL_CENTER(boxH/4));
- SetColor(COLOR_WHITE);
- glVertex2f(PIXEL_CENTER(boxW/4), PIXEL_CENTER(-boxH/4));
- glEnd();
-
- glBegin(GL_LINE_STRIP);
- glVertex2i(0, 0);
- glEnd();
-}
-
-static void LineLoop(void)
-{
-
- glBegin(GL_LINE_LOOP);
- SetColor(COLOR_RED);
- glVertex2f(PIXEL_CENTER(-boxW/4), PIXEL_CENTER(-boxH/4));
- SetColor(COLOR_GREEN);
- glVertex2f(PIXEL_CENTER(-boxW/4), PIXEL_CENTER(boxH/4));
- SetColor(COLOR_BLUE);
- glVertex2f(PIXEL_CENTER(boxW/4), PIXEL_CENTER(boxH/4));
- SetColor(COLOR_WHITE);
- glVertex2f(PIXEL_CENTER(boxW/4), PIXEL_CENTER(-boxH/4));
- glEnd();
-
- glEnable(GL_LOGIC_OP);
- glLogicOp(GL_XOR);
-
- glEnable(GL_BLEND);
- glBlendFunc(GL_ONE, GL_ONE);
-
- SetColor(COLOR_MAGENTA);
- glBegin(GL_LINE_LOOP);
- glVertex2f(PIXEL_CENTER(-boxW/8), PIXEL_CENTER(-boxH/8));
- glVertex2f(PIXEL_CENTER(-boxW/8), PIXEL_CENTER(boxH/8));
- glEnd();
- glBegin(GL_LINE_LOOP);
- glVertex2f(PIXEL_CENTER(-boxW/8), PIXEL_CENTER(boxH/8+5));
- glVertex2f(PIXEL_CENTER(boxW/8), PIXEL_CENTER(boxH/8+5));
- glEnd();
- glDisable(GL_LOGIC_OP);
- glDisable(GL_BLEND);
-
- SetColor(COLOR_GREEN);
- glBegin(GL_POINTS);
- glVertex2i(0, 0);
- glEnd();
-
- glBegin(GL_LINE_LOOP);
- glVertex2i(0, 0);
- glEnd();
-}
-
-static void Bitmap(void)
-{
-
- glBegin(GL_LINES);
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/2, 0);
- glVertex2i(boxW/2, 0);
- glVertex2i(0, -boxH/2);
- glVertex2i(0, boxH/2);
- SetColor(COLOR_RED);
- glVertex2i(0, -3);
- glVertex2i(0, -3+OPENGL_HEIGHT);
- SetColor(COLOR_BLUE);
- glVertex2i(0, -3);
- glVertex2i(OPENGL_WIDTH, -3);
- glEnd();
-
- SetColor(COLOR_GREEN);
-
- glPixelStorei(GL_UNPACK_LSB_FIRST, GL_TRUE);
- glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
-
- glRasterPos2i(0, 0);
- glBitmap(OPENGL_WIDTH, OPENGL_HEIGHT, 0, 3, 0.0, 0.0, OpenGL_bits);
-}
-
-static void Triangles(void)
-{
-
- glBegin(GL_TRIANGLES);
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/4, -boxH/4);
- SetColor(COLOR_RED);
- glVertex2i(-boxW/8, -boxH/16);
- SetColor(COLOR_BLUE);
- glVertex2i(boxW/8, -boxH/16);
-
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/4, boxH/4);
- SetColor(COLOR_RED);
- glVertex2i(-boxW/8, boxH/16);
- SetColor(COLOR_BLUE);
- glVertex2i(boxW/8, boxH/16);
- glEnd();
-
- glBegin(GL_TRIANGLES);
- glVertex2i(0, 0);
- glVertex2i(-100, 100);
- glEnd();
-}
-
-static void TriangleStrip(void)
-{
-
- glBegin(GL_TRIANGLE_STRIP);
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/4, -boxH/4);
- SetColor(COLOR_RED);
- glVertex2i(-boxW/4, boxH/4);
- SetColor(COLOR_BLUE);
- glVertex2i(0, -boxH/4);
- SetColor(COLOR_WHITE);
- glVertex2i(0, boxH/4);
- SetColor(COLOR_CYAN);
- glVertex2i(boxW/4, -boxH/4);
- SetColor(COLOR_YELLOW);
- glVertex2i(boxW/4, boxH/4);
- glEnd();
-
- glBegin(GL_TRIANGLE_STRIP);
- glVertex2i(0, 0);
- glVertex2i(-100, 100);
- glEnd();
-}
-
-static void TriangleFan(void)
-{
- GLint vx[8][2];
- GLint x0, y0, x1, y1, x2, y2, x3, y3;
- GLint i;
-
- y0 = -boxH/4;
- y1 = y0 + boxH/2/3;
- y2 = y1 + boxH/2/3;
- y3 = boxH/4;
- x0 = -boxW/4;
- x1 = x0 + boxW/2/3;
- x2 = x1 + boxW/2/3;
- x3 = boxW/4;
-
- vx[0][0] = x0; vx[0][1] = y1;
- vx[1][0] = x0; vx[1][1] = y2;
- vx[2][0] = x1; vx[2][1] = y3;
- vx[3][0] = x2; vx[3][1] = y3;
- vx[4][0] = x3; vx[4][1] = y2;
- vx[5][0] = x3; vx[5][1] = y1;
- vx[6][0] = x2; vx[6][1] = y0;
- vx[7][0] = x1; vx[7][1] = y0;
-
- glBegin(GL_TRIANGLE_FAN);
- SetColor(COLOR_WHITE);
- glVertex2i(0, 0);
- for (i = 0; i < 8; i++) {
- SetColor(COLOR_WHITE-i);
- glVertex2iv(vx[i]);
- }
- glEnd();
-
- glBegin(GL_TRIANGLE_FAN);
- glVertex2i(0, 0);
- glVertex2i(-100, 100);
- glEnd();
-}
-
-static void Rect(void)
-{
-
- SetColor(COLOR_GREEN);
- glRecti(-boxW/4, -boxH/4, boxW/4, boxH/4);
-}
-
-static void PolygonFunc(void)
-{
- GLint vx[8][2];
- GLint x0, y0, x1, y1, x2, y2, x3, y3;
- GLint i;
-
- y0 = -boxH/4;
- y1 = y0 + boxH/2/3;
- y2 = y1 + boxH/2/3;
- y3 = boxH/4;
- x0 = -boxW/4;
- x1 = x0 + boxW/2/3;
- x2 = x1 + boxW/2/3;
- x3 = boxW/4;
-
- vx[0][0] = x0; vx[0][1] = y1;
- vx[1][0] = x0; vx[1][1] = y2;
- vx[2][0] = x1; vx[2][1] = y3;
- vx[3][0] = x2; vx[3][1] = y3;
- vx[4][0] = x3; vx[4][1] = y2;
- vx[5][0] = x3; vx[5][1] = y1;
- vx[6][0] = x2; vx[6][1] = y0;
- vx[7][0] = x1; vx[7][1] = y0;
-
- glBegin(GL_POLYGON);
- for (i = 0; i < 8; i++) {
- SetColor(COLOR_WHITE-i);
- glVertex2iv(vx[i]);
- }
- glEnd();
-
- glBegin(GL_POLYGON);
- glVertex2i(0, 0);
- glVertex2i(100, 100);
- glEnd();
-}
-
-static void Quads(void)
-{
-
- glBegin(GL_QUADS);
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/4, -boxH/4);
- SetColor(COLOR_RED);
- glVertex2i(-boxW/8, -boxH/16);
- SetColor(COLOR_BLUE);
- glVertex2i(boxW/8, -boxH/16);
- SetColor(COLOR_WHITE);
- glVertex2i(boxW/4, -boxH/4);
-
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/4, boxH/4);
- SetColor(COLOR_RED);
- glVertex2i(-boxW/8, boxH/16);
- SetColor(COLOR_BLUE);
- glVertex2i(boxW/8, boxH/16);
- SetColor(COLOR_WHITE);
- glVertex2i(boxW/4, boxH/4);
- glEnd();
-
- glBegin(GL_QUADS);
- glVertex2i(0, 0);
- glVertex2i(100, 100);
- glVertex2i(-100, 100);
- glEnd();
-}
-
-static void QuadStrip(void)
-{
-
- glBegin(GL_QUAD_STRIP);
- SetColor(COLOR_GREEN);
- glVertex2i(-boxW/4, -boxH/4);
- SetColor(COLOR_RED);
- glVertex2i(-boxW/4, boxH/4);
- SetColor(COLOR_BLUE);
- glVertex2i(0, -boxH/4);
- SetColor(COLOR_WHITE);
- glVertex2i(0, boxH/4);
- SetColor(COLOR_CYAN);
- glVertex2i(boxW/4, -boxH/4);
- SetColor(COLOR_YELLOW);
- glVertex2i(boxW/4, boxH/4);
- glEnd();
-
- glBegin(GL_QUAD_STRIP);
- glVertex2i(0, 0);
- glVertex2i(100, 100);
- glVertex2i(-100, 100);
- glEnd();
-}
-
-static void Draw(EGLDisplay dpy, EGLSurface surf)
-{
-
- glViewport(0, 0, windW, windH);
- glDisable(GL_SCISSOR_TEST);
-
- glPushAttrib(GL_COLOR_BUFFER_BIT);
-
- glColorMask(1, 1, 1, 1);
- glIndexMask(~0);
-
- glClearColor(0.0, 0.0, 0.0, 0.0);
- glClear(GL_COLOR_BUFFER_BIT);
-
- glPopAttrib();
-
- if (mode1) {
- glShadeModel(GL_SMOOTH);
- } else {
- glShadeModel(GL_FLAT);
- }
-
- if (mode2) {
- glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
- } else {
- glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
- }
-
- Viewport(0, 0); Point();
- Viewport(0, 1); Lines();
- Viewport(0, 2); LineStrip();
- Viewport(0, 3); LineLoop();
-
- Viewport(1, 0); Bitmap();
-
- Viewport(1, 1); TriangleFan();
- Viewport(1, 2); Triangles();
- Viewport(1, 3); TriangleStrip();
-
- Viewport(2, 0); Rect();
- Viewport(2, 1); PolygonFunc();
- Viewport(2, 2); Quads();
- Viewport(2, 3); QuadStrip();
-
- glFlush();
-
- if (doubleBuffer) {
- eglSwapBuffers(dpy, surf);
- }
-}
-
-static void
-write_ppm(const char *filename, const GLubyte *buffer, int width, int height)
-{
- const int binary = 0;
- FILE *f = fopen( filename, "w" );
- if (f) {
- int i, x, y;
- const GLubyte *ptr = buffer;
- if (binary) {
- fprintf(f,"P6\n");
- fprintf(f,"# ppm-file created by osdemo.c\n");
- fprintf(f,"%i %i\n", width,height);
- fprintf(f,"255\n");
- fclose(f);
- f = fopen( filename, "ab" ); /* reopen in binary append mode */
- for (y=height-1; y>=0; y--) {
- for (x=0; x<width; x++) {
- i = (y*width + x) * 4;
- fputc(ptr[i], f); /* write red */
- fputc(ptr[i+1], f); /* write green */
- fputc(ptr[i+2], f); /* write blue */
- }
- }
- }
- else {
- /*ASCII*/
- int counter = 0;
- fprintf(f,"P3\n");
- fprintf(f,"# ascii ppm file created by osdemo.c\n");
- fprintf(f,"%i %i\n", width, height);
- fprintf(f,"255\n");
- for (y=height-1; y>=0; y--) {
- for (x=0; x<width; x++) {
- i = (y*width + x) * 4;
- fprintf(f, " %3d %3d %3d", ptr[i], ptr[i+1], ptr[i+2]);
- counter++;
- if (counter % 5 == 0)
- fprintf(f, "\n");
- }
- }
- }
- fclose(f);
- }
-}
-
-int
-main(int argc, char *argv[])
-{
- int maj, min;
- EGLContext ctx;
- EGLSurface screen_surf;
- EGLConfig configs[10];
- EGLScreenMESA screen;
- EGLModeMESA mode;
- EGLint numConfigs, count;
- EGLBoolean b;
- const GLubyte *bitmap;
- EGLint screenAttribs[32];
- EGLint i;
-
- EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
- assert(d);
-
- if (!eglInitialize(d, &maj, &min)) {
- printf("demo: eglInitialize failed\n");
- exit(1);
- }
-
- printf("EGL version = %d.%d\n", maj, min);
- printf("EGL_VENDOR = %s\n", eglQueryString(d, EGL_VENDOR));
- if (!strstr(eglQueryString(d, EGL_EXTENSIONS),
- "EGL_MESA_screen_surface")) {
- printf("EGL_MESA_screen_surface is not supported\n");
- exit(1);
- }
-
- eglGetConfigs(d, configs, 10, &numConfigs);
- eglGetScreensMESA(d, &screen, 1, &count);
- eglGetModesMESA(d, screen, &mode, 1, &count);
-
- eglBindAPI(EGL_OPENGL_API);
- ctx = eglCreateContext(d, configs[0], EGL_NO_CONTEXT, NULL);
- if (ctx == EGL_NO_CONTEXT) {
- printf("failed to create context\n");
- return 0;
- }
-
- i = 0;
- screenAttribs[i++] = EGL_WIDTH;
- eglGetModeAttribMESA(d, mode, EGL_WIDTH, &screenAttribs[i++]);
- screenAttribs[i++] = EGL_HEIGHT;
- eglGetModeAttribMESA(d, mode, EGL_HEIGHT, &screenAttribs[i++]);
- screenAttribs[i] = EGL_NONE;
-
- screen_surf = eglCreateScreenSurfaceMESA(d, configs[0], screenAttribs);
- if (screen_surf == EGL_NO_SURFACE) {
- printf("failed to create screen surface\n");
- return 0;
- }
-
- eglShowScreenSurfaceMESA(d, screen, screen_surf, mode);
-
- b = eglMakeCurrent(d, screen_surf, screen_surf, ctx);
- if (!b) {
- printf("make current failed\n");
- return 0;
- }
- glViewport(0, 0, 1024, 768);
-
-
- Init();
- Reshape(1024, 768);
-
- /* some drivers crash when rendering to front buffer */
-#if 0
- glDrawBuffer( GL_FRONT );
- glClearColor( 0, 1.0, 0, 1);
-
- glClear( GL_COLOR_BUFFER_BIT );
-#endif
-
- doubleBuffer = 1;
- glDrawBuffer( GL_BACK );
-
- Draw(d, screen_surf);
- sleep(2);
-
- /* TODO EGL_KHR_lock_surface */
- bitmap = NULL;
- if (bitmap)
- write_ppm("dump.ppm", bitmap, 1024, 768);
-
- eglDestroySurface(d, screen_surf);
- eglDestroyContext(d, ctx);
- eglTerminate(d);
-
- return 0;
-}
diff --git a/src/egl/opengl/eglinfo.c b/src/egl/opengl/eglinfo.c
index 8e82e73..1f79fef 100644
--- a/src/egl/opengl/eglinfo.c
+++ b/src/egl/opengl/eglinfo.c
@@ -93,10 +93,6 @@ PrintConfigs(EGLDisplay d)
strcat(surfString, "pb,");
if (surfaces & EGL_PIXMAP_BIT)
strcat(surfString, "pix,");
-#ifdef EGL_MESA_screen_surface
- if (surfaces & EGL_SCREEN_BIT_MESA)
- strcat(surfString, "scrn,");
-#endif
if (strlen(surfString) > 0)
surfString[strlen(surfString) - 1] = 0;
@@ -117,45 +113,6 @@ PrintConfigs(EGLDisplay d)
}
-/**
- * Print table of all available configurations.
- */
-static void
-PrintModes(EGLDisplay d)
-{
-#ifdef EGL_MESA_screen_surface
- const char *extensions = eglQueryString(d, EGL_EXTENSIONS);
- if (strstr(extensions, "EGL_MESA_screen_surface")) {
- EGLScreenMESA screens[MAX_SCREENS];
- EGLint numScreens = 1, scrn;
- EGLModeMESA modes[MAX_MODES];
-
- eglGetScreensMESA(d, screens, MAX_SCREENS, &numScreens);
- printf("Number of Screens: %d\n\n", numScreens);
-
- for (scrn = 0; scrn < numScreens; scrn++) {
- EGLint numModes, i;
-
- eglGetModesMESA(d, screens[scrn], modes, MAX_MODES, &numModes);
-
- printf("Screen %d Modes:\n", scrn);
- printf(" id width height refresh name\n");
- printf("-----------------------------------------\n");
- for (i = 0; i < numModes; i++) {
- EGLint id, w, h, r;
- const char *str;
- eglGetModeAttribMESA(d, modes[i], EGL_MODE_ID_MESA, &id);
- eglGetModeAttribMESA(d, modes[i], EGL_WIDTH, &w);
- eglGetModeAttribMESA(d, modes[i], EGL_HEIGHT, &h);
- eglGetModeAttribMESA(d, modes[i], EGL_REFRESH_RATE_MESA, &r);
- str = eglQueryModeStringMESA(d, modes[i]);
- printf("0x%02x %5d %5d %.3f %s\n", id, w, h, r / 1000.0, str);
- }
- }
- }
-#endif
-}
-
static void
PrintExtensions(EGLDisplay d)
{
@@ -219,8 +176,6 @@ main(int argc, char *argv[])
PrintConfigs(d);
- PrintModes(d);
-
eglTerminate(d);
return 0;
diff --git a/src/egl/opengl/eglscreen.c b/src/egl/opengl/eglscreen.c
deleted file mode 100644
index ba91087..0000000
--- a/src/egl/opengl/eglscreen.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/*
- * Stolen from eglgears
- *
- * Creates a surface and show that on the first screen
- */
-
-#define EGL_EGLEXT_PROTOTYPES
-
-#include <assert.h>
-#include <math.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include "gl_wrap.h"
-#include <EGL/egl.h>
-#include <EGL/eglext.h>
-
-#define MAX_CONFIGS 10
-#define MAX_MODES 100
-
-int
-main(int argc, char *argv[])
-{
- int maj, min;
- EGLSurface screen_surf;
- EGLConfig configs[MAX_CONFIGS];
- EGLint numConfigs, i;
- EGLBoolean b;
- EGLDisplay d;
- EGLint screenAttribs[10];
- EGLModeMESA mode[MAX_MODES];
- EGLScreenMESA screen;
- EGLint count;
- EGLint chosenMode = 0;
- EGLint width = 0, height = 0;
-
- d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
- assert(d);
-
- if (!eglInitialize(d, &maj, &min)) {
- printf("eglscreen: eglInitialize failed\n");
- exit(1);
- }
-
- printf("eglscreen: EGL version = %d.%d\n", maj, min);
- printf("eglscreen: EGL_VENDOR = %s\n", eglQueryString(d, EGL_VENDOR));
-
- /* XXX use ChooseConfig */
- eglGetConfigs(d, configs, MAX_CONFIGS, &numConfigs);
- eglGetScreensMESA(d, &screen, 1, &count);
-
- if (!eglGetModesMESA(d, screen, mode, MAX_MODES, &count) || count == 0) {
- printf("eglscreen: eglGetModesMESA failed!\n");
- return 0;
- }
-
- /* Print list of modes, and find the one to use */
- printf("eglscreen: Found %d modes:\n", count);
- for (i = 0; i < count; i++) {
- EGLint w, h;
- eglGetModeAttribMESA(d, mode[i], EGL_WIDTH, &w);
- eglGetModeAttribMESA(d, mode[i], EGL_HEIGHT, &h);
- printf("%3d: %d x %d\n", i, w, h);
- if (w > width && h > height) {
- width = w;
- height = h;
- chosenMode = i;
- }
- }
- printf("eglscreen: Using screen mode/size %d: %d x %d\n", chosenMode, width, height);
-
- /* build up screenAttribs array */
- i = 0;
- screenAttribs[i++] = EGL_WIDTH;
- screenAttribs[i++] = width;
- screenAttribs[i++] = EGL_HEIGHT;
- screenAttribs[i++] = height;
- screenAttribs[i++] = EGL_NONE;
-
- screen_surf = eglCreateScreenSurfaceMESA(d, configs[0], screenAttribs);
- if (screen_surf == EGL_NO_SURFACE) {
- printf("eglscreen: Failed to create screen surface\n");
- return 0;
- }
-
- b = eglShowScreenSurfaceMESA(d, screen, screen_surf, mode[chosenMode]);
- if (!b) {
- printf("eglscreen: Show surface failed\n");
- return 0;
- }
-
- usleep(5000000);
-
- eglDestroySurface(d, screen_surf);
- eglTerminate(d);
-
- return 0;
-}
diff --git a/src/egl/opengles1/.gitignore b/src/egl/opengles1/.gitignore
index 646b639..9269f90 100644
--- a/src/egl/opengles1/.gitignore
+++ b/src/egl/opengles1/.gitignore
@@ -1,17 +1,13 @@
bindtex
clear
-drawtex_screen
drawtex_x11
eglfbdev
es1_info
-gears_screen
gears_x11
msaa
pbuffer
render_tex
texture_from_pixmap
-torus_screen
torus_x11
-tri_screen
tri_x11
two_win
diff --git a/src/egl/opengles1/CMakeLists.txt b/src/egl/opengles1/CMakeLists.txt
index 9f9a758..980656e 100644
--- a/src/egl/opengles1/CMakeLists.txt
+++ b/src/egl/opengles1/CMakeLists.txt
@@ -37,10 +37,6 @@ set (targets
)
foreach (target ${targets})
- add_executable (${target}_screen ${target}.c)
- target_link_libraries (${target}_screen eglut_screen ${GLESV1_LIBRARIES})
- install (TARGETS ${target}_screen DESTINATION ${subdir})
-
if (X11_FOUND)
add_executable (${target}_x11 ${target}.c)
target_link_libraries (${target}_x11 eglut_x11 ${GLESV1_LIBRARIES})
diff --git a/src/egl/opengles1/Makefile.am b/src/egl/opengles1/Makefile.am
index 7a9828d..fa397c2 100644
--- a/src/egl/opengles1/Makefile.am
+++ b/src/egl/opengles1/Makefile.am
@@ -41,19 +41,15 @@ if HAVE_GLESV1
noinst_PROGRAMS = \
bindtex \
clear \
- drawtex_screen \
drawtex_x11 \
eglfbdev \
es1_info \
- gears_screen \
gears_x11 \
msaa \
pbuffer\
render_tex \
texture_from_pixmap \
- torus_screen \
torus_x11 \
- tri_screen \
tri_x11 \
two_win
endif
@@ -71,21 +67,11 @@ two_win_LDADD = $(X11_LIBS)
clear_LDADD = ../eglut/libeglut_x11.la $(EGL_LIBS) $(X11_LIBS)
clear_LDFLAGS =
-drawtex_screen_SOURCES = drawtex.c
-gears_screen_SOURCES = gears.c
-torus_screen_SOURCES = torus.c
-tri_screen_SOURCES = tri.c
-
drawtex_x11_SOURCES = drawtex.c
gears_x11_SOURCES = gears.c
torus_x11_SOURCES = torus.c
tri_x11_SOURCES = tri.c
-drawtex_screen_LDADD = ../eglut/libeglut_screen.la
-gears_screen_LDADD = ../eglut/libeglut_screen.la
-torus_screen_LDADD = ../eglut/libeglut_screen.la
-tri_screen_LDADD = ../eglut/libeglut_screen.la
-
drawtex_x11_LDADD = ../eglut/libeglut_x11.la
gears_x11_LDADD = ../eglut/libeglut_x11.la
torus_x11_LDADD = ../eglut/libeglut_x11.la
diff --git a/src/egl/opengles2/.gitignore b/src/egl/opengles2/.gitignore
index fb4c32b..4d0268d 100644
--- a/src/egl/opengles2/.gitignore
+++ b/src/egl/opengles2/.gitignore
@@ -1,5 +1,4 @@
es2gears
-es2gears_screen
es2gears_x11
es2_info
es2tri
diff --git a/src/egl/opengles2/CMakeLists.txt b/src/egl/opengles2/CMakeLists.txt
index 227ba66..f9a25fc 100644
--- a/src/egl/opengles2/CMakeLists.txt
+++ b/src/egl/opengles2/CMakeLists.txt
@@ -28,10 +28,6 @@ set (targets
)
foreach (target ${targets})
- add_executable (${target}_screen ${target}.c)
- target_link_libraries (${target}_screen eglut_screen ${GLESV2_LIBRARIES})
- install (TARGETS ${target}_screen DESTINATION ${subdir})
-
if (X11_FOUND)
add_executable (${target}_x11 ${target}.c)
target_link_libraries (${target}_x11 eglut_x11 ${GLESV2_LIBRARIES})
diff --git a/src/egl/opengles2/Makefile.am b/src/egl/opengles2/Makefile.am
index 36d6059..b80ba50 100644
--- a/src/egl/opengles2/Makefile.am
+++ b/src/egl/opengles2/Makefile.am
@@ -35,8 +35,7 @@ AM_LDFLAGS = \
if HAVE_EGL
if HAVE_GLESV2
-bin_PROGRAMS = \
- es2gears_screen
+bin_PROGRAMS =
if HAVE_X11
bin_PROGRAMS += \
es2_info \
@@ -52,12 +51,8 @@ endif
es2_info_LDADD = $(X11_LIBS)
es2tri_LDADD = $(X11_LIBS)
-es2gears_screen_SOURCES = es2gears.c
-
es2gears_x11_SOURCES = es2gears.c
-es2gears_screen_LDADD = ../eglut/libeglut_screen.la
-
es2gears_x11_LDADD = ../eglut/libeglut_x11.la
es2gears_wayland_SOURCES = es2gears.c
diff --git a/src/egl/openvg/.gitignore b/src/egl/openvg/.gitignore
index 9bd368a..fc71b88 100644
--- a/src/egl/openvg/.gitignore
+++ b/src/egl/openvg/.gitignore
@@ -1,7 +1,5 @@
lion_x11
-lion_screen
sp_x11
-sp_screen
text
trivial/arc
trivial/blend
diff --git a/src/egl/openvg/CMakeLists.txt b/src/egl/openvg/CMakeLists.txt
index adcc755..584ac7d 100644
--- a/src/egl/openvg/CMakeLists.txt
+++ b/src/egl/openvg/CMakeLists.txt
@@ -30,10 +30,6 @@ foreach (target ${targets})
set (sources ${sources} lion-render.c)
endif ()
- add_executable (${target}_screen ${sources})
- target_link_libraries (${target}_screen eglut_screen ${VG_LIBRARIES})
- install (TARGETS ${target}_screen DESTINATION ${subdir})
-
if (X11_FOUND)
add_executable (${target}_x11 ${sources})
target_link_libraries (${target}_x11 eglut_x11 ${VG_LIBRARIES})
diff --git a/src/egl/openvg/Makefile.am b/src/egl/openvg/Makefile.am
index 7318a43..b0f1212 100644
--- a/src/egl/openvg/Makefile.am
+++ b/src/egl/openvg/Makefile.am
@@ -50,21 +50,13 @@ endif
if HAVE_EGL
if HAVE_VG
noinst_PROGRAMS = \
- lion_screen \
- sp_screen \
$(EGL_X11_DEMOS)
endif
endif
-lion_screen_SOURCES = lion.c lion-render.c lion-render.h
-sp_screen_SOURCES = sp.c
-
lion_x11_SOURCES = lion.c lion-render.c lion-render.h
sp_x11_SOURCES = sp.c
-lion_screen_LDADD = ../eglut/libeglut_screen.la
-sp_screen_LDADD = ../eglut/libeglut_screen.la
-
lion_x11_LDADD = ../eglut/libeglut_x11.la
sp_x11_LDADD = ../eglut/libeglut_x11.la