diff options
author | Lukasz Kostyra <l.kostyra@samsung.com> | 2020-07-03 12:51:40 +0200 |
---|---|---|
committer | Lukasz Kostyra <l.kostyra@samsung.com> | 2020-07-06 09:57:24 +0200 |
commit | 552acc5e211eb1a2f1ce160a214211e5f3a2952b (patch) | |
tree | f8ad03bbb44b4c422096cf8dbe39f378e21b3dcd | |
parent | 30658d751f413c215cf344a6782dba1b1d97a04c (diff) | |
download | emulator-yagl-552acc5e211eb1a2f1ce160a214211e5f3a2952b.tar.gz emulator-yagl-552acc5e211eb1a2f1ce160a214211e5f3a2952b.tar.bz2 emulator-yagl-552acc5e211eb1a2f1ce160a214211e5f3a2952b.zip |
Remove dummy librariessubmit/tizen/20200706.084419accepted/tizen/unified/20200707.140939
Following commit removes dummy EGL/GLES libraries and implements
discovery of /dev/yagl in libEGL.so.
If /dev/yagl is missing (ex. there is no host GPU available), libEGL.so will
fail any EGL function. This will make it impossible to create a functioning
GLES context, which will make GLES functions exit early, on YAGL_GET_CTX() calls.
Change-Id: I758496c39806c854315399a2b5c33ca688a8573c
-rw-r--r-- | CMakeLists.txt | 3 | ||||
-rw-r--r-- | EGL/yagl_egl_calls.c | 120 | ||||
-rw-r--r-- | dummy/CMakeLists.txt | 10 | ||||
-rw-r--r-- | dummy/dummy.h | 34 | ||||
-rw-r--r-- | dummy/egl_dummy.c | 70 | ||||
-rw-r--r-- | dummy/gles1_dummy.c | 184 | ||||
-rw-r--r-- | dummy/gles2_dummy.c | 179 | ||||
-rw-r--r-- | packaging/emulator-yagl.spec | 6 | ||||
-rwxr-xr-x | packaging/opengl-es-setup-yagl-env.sh | 22 |
9 files changed, 121 insertions, 507 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 8b8c907..bd02e24 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -189,6 +189,3 @@ add_subdirectory(EGL) add_subdirectory(GLES_common) add_subdirectory(GLESv1_CM) add_subdirectory(GLESv2) -if (DUMMY_LIBS) -add_subdirectory(dummy) -endif() diff --git a/EGL/yagl_egl_calls.c b/EGL/yagl_egl_calls.c index 2b4949d..cabf163 100644 --- a/EGL/yagl_egl_calls.c +++ b/EGL/yagl_egl_calls.c @@ -62,6 +62,7 @@ #include <assert.h> #include <dlfcn.h> #include <stdlib.h> +#include <sys/stat.h> #define YAGL_SET_ERR(err) \ yagl_set_error(err); \ @@ -72,6 +73,35 @@ YAGL_LOG_WARN("NOT IMPLEMENTED!!!"); \ return ret; + +// Check if /dev/yagl is reachable. Return 1 if exists and is a char device, 0 if doesn't. +static int yagl_check_gpu_available() +{ + YAGL_LOG_FUNC_SET(yagl_check_gpu_available); + + static int device_available = -1; + + // do the check only once per app + if (device_available == -1) { + struct stat yagl_dev_stat; + int ret = stat("/dev/yagl", &yagl_dev_stat); + if (ret == 0 && S_ISCHR(yagl_dev_stat.st_mode)) { + device_available = 1; // /dev/yagl exists + } else { + device_available = 0; // /dev/yagl does not exist/is not a valid char device + } + } + + return device_available; +} + +#define YAGL_RETURN_IF_DEV_NOT_AVAILABLE(ret) \ + if (!yagl_check_gpu_available()) { \ + YAGL_LOG_EVENT(debug, getpid(), syscall(SYS_gettid), __func__, "/dev/yagl not available"); \ + return ret; \ + } + + static int yagl_get_client_api(const EGLint *attrib_list, yagl_client_api *client_api) { int i = 0; @@ -201,6 +231,8 @@ YAGL_API EGLint eglGetError() { EGLint retval; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(0); + YAGL_LOG_FUNC_ENTER(eglGetError, NULL); retval = yagl_get_error(); @@ -216,6 +248,8 @@ YAGL_API EGLDisplay eglGetDisplay(EGLNativeDisplayType display_id) struct yagl_display *dpy; EGLDisplay ret = EGL_NO_DISPLAY; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_DISPLAY); + YAGL_LOG_FUNC_ENTER_SPLIT1(eglGetDisplay, EGLNativeDisplayType, display_id); platform = yagl_guess_platform((yagl_os_display)display_id); @@ -250,6 +284,8 @@ YAGL_API EGLBoolean eglInitialize(EGLDisplay dpy_, EGLint* major, EGLint* minor) EGLint error = 0; struct yagl_display *dpy; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglInitialize, "dpy = %u", (yagl_host_handle)VOIDP2INT(dpy_)); @@ -286,6 +322,8 @@ YAGL_API EGLBoolean eglTerminate(EGLDisplay dpy_) struct yagl_display *dpy; EGLBoolean ret = EGL_FALSE; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglTerminate, "dpy = %u", (yagl_host_handle)VOIDP2INT(dpy_)); @@ -312,6 +350,8 @@ YAGL_API const char *eglQueryString(EGLDisplay dpy_, EGLint name) { const char *str = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(NULL); + YAGL_LOG_FUNC_ENTER(eglQueryString, "dpy = %u, name = %d", (yagl_host_handle)VOIDP2INT(dpy_), @@ -350,6 +390,8 @@ YAGL_API EGLBoolean eglGetConfigs(EGLDisplay dpy, { EGLint error = 0; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglGetConfigs, "dpy = %u, configs = %p, config_size = %d", (yagl_host_handle)VOIDP2INT(dpy), @@ -388,6 +430,8 @@ YAGL_API EGLBoolean eglChooseConfig(EGLDisplay dpy, { EGLint error = 0; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglChooseConfig, "dpy = %u", (yagl_host_handle)VOIDP2INT(dpy)); @@ -428,6 +472,8 @@ YAGL_API EGLBoolean eglGetConfigAttrib(EGLDisplay dpy_, EGLBoolean ret = EGL_FALSE; int visual_id = 0, visual_type = 0; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglGetConfigAttrib, "dpy = %u, config = %u, attribute = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -503,6 +549,8 @@ YAGL_API EGLSurface eglCreateWindowSurface(EGLDisplay dpy_, struct yagl_native_drawable *native_win = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_SURFACE); + YAGL_LOG_FUNC_ENTER(eglCreateWindowSurface, "dpy = %u, config = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -558,6 +606,8 @@ YAGL_API EGLSurface eglCreatePbufferSurface(EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_SURFACE); + YAGL_LOG_FUNC_ENTER(eglCreatePbufferSurface, "dpy = %u, config = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -605,6 +655,8 @@ YAGL_API EGLSurface eglCreatePixmapSurface(EGLDisplay dpy_, struct yagl_native_drawable *native_pixmap = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_SURFACE); + YAGL_LOG_FUNC_ENTER(eglCreatePixmapSurface, "dpy = %u, config = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -659,6 +711,8 @@ YAGL_API EGLBoolean eglDestroySurface(EGLDisplay dpy_, EGLSurface surface_) struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglDestroySurface, "dpy = %u, surface = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -705,6 +759,8 @@ YAGL_API EGLBoolean eglQuerySurface(EGLDisplay dpy_, void *ptr; uint32_t stride; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglQuerySurface, "dpy = %u, surface = %p, attribute = 0x%X, value = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -795,6 +851,8 @@ out: YAGL_API EGLBoolean eglBindAPI(EGLenum api) { + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER_SPLIT1(eglBindAPI, EGLenum, api); if (api != EGL_OPENGL_ES_API) { @@ -814,6 +872,8 @@ YAGL_API EGLenum eglQueryAPI() { EGLenum ret; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(0); + YAGL_LOG_FUNC_ENTER_SPLIT0(eglQueryAPI); ret = yagl_get_api(); @@ -827,6 +887,8 @@ YAGL_API EGLBoolean eglWaitClient() { struct yagl_surface *draw_sfc; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE) + YAGL_LOG_FUNC_ENTER_SPLIT0(eglWaitClient); draw_sfc = yagl_get_draw_surface(); @@ -844,6 +906,8 @@ YAGL_API EGLBoolean eglReleaseThread() { EGLint error = 0; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglReleaseThread, NULL); if (!yagl_host_eglReleaseThread(&error)) { @@ -882,6 +946,8 @@ YAGL_API EGLBoolean eglSurfaceAttrib(EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglSurfaceAttrib, "dpy = %u, surface = %p, attribute = 0x%X, value = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -928,6 +994,8 @@ YAGL_API EGLBoolean eglBindTexImage(EGLDisplay dpy_, struct yagl_client_image *image = NULL; struct yagl_tex_image_binding *binding = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglBindTexImage, "dpy = %u, surface = %p, buffer = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1007,6 +1075,8 @@ YAGL_API EGLBoolean eglReleaseTexImage(EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglReleaseTexImage, "dpy = %u, surface = %p, buffer = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1047,6 +1117,8 @@ YAGL_API EGLBoolean eglSwapInterval(EGLDisplay dpy, EGLint interval) { struct yagl_surface *draw_sfc; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglSwapInterval, "dpy = %u, interval = %d", (yagl_host_handle)VOIDP2INT(dpy), @@ -1087,6 +1159,8 @@ YAGL_API EGLContext eglCreateContext(EGLDisplay dpy_, struct yagl_client_context *client_ctx = NULL; struct yagl_context *ctx = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_CONTEXT); + YAGL_LOG_FUNC_ENTER(eglCreateContext, "dpy = %u, config = %u, share_context = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1161,6 +1235,8 @@ YAGL_API EGLBoolean eglDestroyContext(EGLDisplay dpy_, EGLContext ctx) EGLint error = 0; struct yagl_display *dpy = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglDestroyContext, "dpy = %u, ctx = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1200,6 +1276,8 @@ YAGL_API EGLBoolean eglMakeCurrent(EGLDisplay dpy_, struct yagl_context *ctx = NULL; struct yagl_context *prev_ctx = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglMakeCurrent, "dpy = %u, draw = %p, read = %p, ctx = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1333,6 +1411,8 @@ YAGL_API EGLContext eglGetCurrentContext(void) { struct yagl_context *ctx; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_CONTEXT); + YAGL_LOG_FUNC_ENTER(eglGetCurrentContext, NULL); ctx = yagl_get_context(); @@ -1349,6 +1429,8 @@ YAGL_API EGLSurface eglGetCurrentSurface(EGLint readdraw) YAGL_LOG_FUNC_ENTER(eglGetCurrentSurface, NULL); + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_SURFACE); + if (readdraw == EGL_READ) { sfc = yagl_get_read_surface(); ret = (sfc ? yagl_surface_get_handle(sfc) : EGL_NO_SURFACE); @@ -1368,6 +1450,8 @@ YAGL_API EGLDisplay eglGetCurrentDisplay(void) { struct yagl_context *ctx; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_DISPLAY); + YAGL_LOG_FUNC_ENTER(eglGetCurrentDisplay, NULL); ctx = yagl_get_context(); @@ -1387,6 +1471,8 @@ YAGL_API EGLBoolean eglQueryContext(EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_context *ctx = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglQueryContext, "dpy = %u, ctx = %u, attribute = 0x%X, value = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1483,6 +1569,8 @@ YAGL_API EGLBoolean eglWaitGL() { EGLBoolean ret; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER_SPLIT0(eglWaitGL); ret = eglWaitClient(); @@ -1496,6 +1584,8 @@ YAGL_API EGLBoolean eglWaitNative(EGLint engine) { struct yagl_surface *draw_sfc; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER_SPLIT1(eglWaitNative, EGLint, engine); draw_sfc = yagl_get_draw_surface(); @@ -1515,6 +1605,8 @@ YAGL_API EGLBoolean eglSwapBuffers(EGLDisplay dpy_, EGLSurface surface_) struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglSwapBuffers, "dpy = %u, surface = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1597,6 +1689,8 @@ YAGL_API EGLBoolean eglCopyBuffers(EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglCopyBuffers, "dpy = %u, surface = %p, target = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1654,6 +1748,8 @@ YAGL_API EGLImageKHR eglCreateImageKHR(EGLDisplay dpy_, struct yagl_image *image = NULL; int i = 0; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_IMAGE_KHR); + YAGL_LOG_FUNC_ENTER(eglCreateImageKHR, "dpy = %u, ctx = %u, target = %u, buffer = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1833,6 +1929,8 @@ YAGL_API EGLBoolean eglDestroyImageKHR( EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_image *image = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglDestroyImageKHR, "dpy = %u, image = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1873,6 +1971,8 @@ YAGL_API EGLBoolean eglLockSurfaceKHR(EGLDisplay dpy_, int preserve = 0; EGLint hint = 0; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglLockSurfaceKHR, "dpy = %u, surface = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1931,6 +2031,8 @@ YAGL_API EGLBoolean eglUnlockSurfaceKHR(EGLDisplay dpy_, struct yagl_display *dpy = NULL; struct yagl_surface *surface = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglUnlockSurfaceKHR, "dpy = %u, surface = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -1967,6 +2069,8 @@ YAGL_API EGLSyncKHR eglCreateSyncKHR(EGLDisplay dpy_, EGLenum type, const EGLint struct yagl_display *dpy = NULL; struct yagl_fence *fence = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_NO_SYNC_KHR); + YAGL_LOG_FUNC_ENTER(eglCreateSyncKHR, "dpy = %u, type = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2013,6 +2117,8 @@ YAGL_API EGLBoolean eglDestroySyncKHR(EGLDisplay dpy_, EGLSyncKHR sync_) struct yagl_display *dpy = NULL; struct yagl_fence *fence = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglDestroySyncKHR, "dpy = %u, sync = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2048,6 +2154,8 @@ YAGL_API EGLint eglClientWaitSyncKHR(EGLDisplay dpy_, EGLSyncKHR sync_, EGLint f struct yagl_display *dpy = NULL; struct yagl_fence *fence = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglClientWaitSyncKHR, "dpy = %u, sync = %p, flags = 0x%X, timeout = %u", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2082,6 +2190,8 @@ out: YAGL_API EGLBoolean eglSignalSyncKHR(EGLDisplay dpy_, EGLSyncKHR sync_, EGLenum mode) { + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglSignalSyncKHR, "dpy = %u, sync = %p, mode = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2101,6 +2211,8 @@ YAGL_API EGLBoolean eglGetSyncAttribKHR(EGLDisplay dpy_, EGLSyncKHR sync_, EGLin struct yagl_display *dpy = NULL; struct yagl_fence *fence = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglGetSyncAttribKHR, "dpy = %u, sync = %p, attribute = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2153,6 +2265,8 @@ YAGL_API EGLBoolean eglBindWaylandDisplayWL(EGLDisplay dpy_, EGLBoolean res = EGL_FALSE; struct yagl_display *dpy = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglBindWaylandDisplayWL, "dpy = %u, display = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2190,6 +2304,8 @@ YAGL_API EGLBoolean eglUnbindWaylandDisplayWL(EGLDisplay dpy_, EGLBoolean res = EGL_FALSE; struct yagl_display *dpy = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglUnbindWaylandDisplayWL, "dpy = %u, display = %p", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2230,6 +2346,8 @@ YAGL_API EGLBoolean eglQueryWaylandBufferWL(EGLDisplay dpy_, EGLBoolean res = EGL_FALSE; struct yagl_display *dpy = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(EGL_FALSE); + YAGL_LOG_FUNC_ENTER(eglQueryWaylandBufferWL, "dpy = %u, buffer = %p, attribute = 0x%X", (yagl_host_handle)VOIDP2INT(dpy_), @@ -2273,6 +2391,8 @@ YAGL_API __eglMustCastToProperFunctionPointerType eglGetProcAddress(const char* { __eglMustCastToProperFunctionPointerType ret = NULL; + YAGL_RETURN_IF_DEV_NOT_AVAILABLE(NULL); + YAGL_LOG_FUNC_ENTER(eglGetProcAddress, "procname = %s", procname); if (procname) { diff --git a/dummy/CMakeLists.txt b/dummy/CMakeLists.txt deleted file mode 100644 index 026f026..0000000 --- a/dummy/CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ -include_directories(.) - -add_library(EGL_dummy SHARED egl_dummy.c) -add_library(GLESv1_dummy SHARED gles1_dummy.c) -add_library(GLESv2_dummy SHARED gles2_dummy.c) - -install( - TARGETS EGL_dummy GLESv1_dummy GLESv2_dummy - LIBRARY DESTINATION ${INSTALL_LIB_DIR}/driver -) diff --git a/dummy/dummy.h b/dummy/dummy.h deleted file mode 100644 index 3c8bd91..0000000 --- a/dummy/dummy.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Emulator YaGL dummy headder for export API - * - * Copyright (c) 2013 Samsung Electronics Co., Ltd. All rights reserved. - * - * Contact : - * Jinhyung Jo <jinhyung.jo@samsung.conm> - * Stanislav Vorobiov <s.vorobiov@samsung.com> - * YeongKyoon Lee <yeongkyoon.lee@samsung.com> - * - * 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. - * - * Contributors: - * - S-Core Co., Ltd - */ - -#define DUMMY_API __attribute__ ((visibility("default"))) - diff --git a/dummy/egl_dummy.c b/dummy/egl_dummy.c deleted file mode 100644 index c2712f6..0000000 --- a/dummy/egl_dummy.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Emulator YaGL dummy library for EGL - * - * Copyright (c) 2013 Samsung Electronics Co., Ltd. All rights reserved. - * - * Contact : - * Jinhyung Jo <jinhyung.jo@samsung.conm> - * Stanislav Vorobiov <s.vorobiov@samsung.com> - * YeongKyoon Lee <yeongkyoon.lee@samsung.com> - * - * 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. - * - * Contributors: - * - S-Core Co., Ltd - */ - -#include "EGL/egl.h" -#include "dummy.h" - -/* EGL Functions */ -DUMMY_API EGLAPI EGLint EGLAPIENTRY eglGetError(void) { return 0; } -DUMMY_API EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay(EGLNativeDisplayType display_id) { return EGL_NO_DISPLAY; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglTerminate(EGLDisplay dpy) { return EGL_FALSE; } -DUMMY_API EGLAPI const char * EGLAPIENTRY eglQueryString(EGLDisplay dpy, EGLint name) { return 0; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs(EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list) { return EGL_NO_SURFACE; } -DUMMY_API EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list) { return EGL_NO_SURFACE; } -DUMMY_API EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list) { return EGL_NO_SURFACE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface(EGLDisplay dpy, EGLSurface surface) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface(EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI(EGLenum api) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLenum EGLAPIENTRY eglQueryAPI(void) { return 0; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient(void) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread(void) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer(EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list) { return EGL_NO_SURFACE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib(EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval(EGLDisplay dpy, EGLint interval) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLContext EGLAPIENTRY eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list) { return EGL_NO_CONTEXT; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext(EGLDisplay dpy, EGLContext ctx) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext(void) { return EGL_NO_CONTEXT; } -DUMMY_API EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface(EGLint readdraw) { return EGL_NO_SURFACE; } -DUMMY_API EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay(void) { return EGL_NO_DISPLAY; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext(EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL(void) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative(EGLint engine) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers(EGLDisplay dpy, EGLSurface surface) { return EGL_FALSE; } -DUMMY_API EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers(EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target) { return EGL_FALSE; } -DUMMY_API EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress(const char *procname) { return ((__eglMustCastToProperFunctionPointerType)0); } diff --git a/dummy/gles1_dummy.c b/dummy/gles1_dummy.c deleted file mode 100644 index 553664f..0000000 --- a/dummy/gles1_dummy.c +++ /dev/null @@ -1,184 +0,0 @@ -/* - * Emulator YaGL dummy library for GLESv1 - * - * Copyright (c) 2013 Samsung Electronics Co., Ltd. All rights reserved. - * - * Contact : - * Jinhyung Jo <jinhyung.jo@samsung.conm> - * Stanislav Vorobiov <s.vorobiov@samsung.com> - * YeongKyoon Lee <yeongkyoon.lee@samsung.com> - * - * 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. - * - * Contributors: - * - S-Core Co., Ltd - * - */ - -#include "GLES/gl.h" -#include "dummy.h" - -/* Available only in Common profile */ -DUMMY_API GL_API void GL_APIENTRY glAlphaFunc (GLenum func, GLclampf ref) { return; } -DUMMY_API GL_API void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { return; } -DUMMY_API GL_API void GL_APIENTRY glClearDepthf (GLclampf depth) { return; } -DUMMY_API GL_API void GL_APIENTRY glClipPlanef (GLenum plane, const GLfloat *equation) { return; } -DUMMY_API GL_API void GL_APIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) { return; } -DUMMY_API GL_API void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar) { return; } -DUMMY_API GL_API void GL_APIENTRY glFogf (GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glFogfv (GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glFrustumf (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetClipPlanef (GLenum pname, GLfloat eqn[4]) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetTexEnvfv (GLenum env, GLenum pname, GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightModelf (GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightModelfv (GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightf (GLenum light, GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glLineWidth (GLfloat width) { return; } -DUMMY_API GL_API void GL_APIENTRY glLoadMatrixf (const GLfloat *m) { return; } -DUMMY_API GL_API void GL_APIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glMultMatrixf (const GLfloat *m) { return; } -DUMMY_API GL_API void GL_APIENTRY glMultiTexCoord4f (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) { return; } -DUMMY_API GL_API void GL_APIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz) { return; } -DUMMY_API GL_API void GL_APIENTRY glOrthof (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointParameterf (GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointParameterfv (GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointSize (GLfloat size) { return; } -DUMMY_API GL_API void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units) { return; } -DUMMY_API GL_API void GL_APIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z) { return; } -DUMMY_API GL_API void GL_APIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z) { return; } - -/* Available in both Common and Common-Lite profiles */ -DUMMY_API GL_API void GL_APIENTRY glActiveTexture (GLenum texture) { return; } -DUMMY_API GL_API void GL_APIENTRY glAlphaFuncx (GLenum func, GLclampx ref) { return; } -DUMMY_API GL_API void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer) { return; } -DUMMY_API GL_API void GL_APIENTRY glBindTexture (GLenum target, GLuint texture) { return; } -DUMMY_API GL_API void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor) { return; } -DUMMY_API GL_API void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage) { return; } -DUMMY_API GL_API void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data) { return; } -DUMMY_API GL_API void GL_APIENTRY glClear (GLbitfield mask) { return; } -DUMMY_API GL_API void GL_APIENTRY glClearColorx (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha) { return; } -DUMMY_API GL_API void GL_APIENTRY glClearDepthx (GLclampx depth) { return; } -DUMMY_API GL_API void GL_APIENTRY glClearStencil (GLint s) { return; } -DUMMY_API GL_API void GL_APIENTRY glClientActiveTexture (GLenum texture) { return; } -DUMMY_API GL_API void GL_APIENTRY glClipPlanex (GLenum plane, const GLfixed *equation) { return; } -DUMMY_API GL_API void GL_APIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha) { return; } -DUMMY_API GL_API void GL_APIENTRY glColor4x (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha) { return; } -DUMMY_API GL_API void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { return; } -DUMMY_API GL_API void GL_APIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { return; } -DUMMY_API GL_API void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data) { return; } -DUMMY_API GL_API void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data) { return; } -DUMMY_API GL_API void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) { return; } -DUMMY_API GL_API void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) { return; } -DUMMY_API GL_API void GL_APIENTRY glCullFace (GLenum mode) { return; } -DUMMY_API GL_API void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint *buffers) { return; } -DUMMY_API GL_API void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint *textures) { return; } -DUMMY_API GL_API void GL_APIENTRY glDepthFunc (GLenum func) { return; } -DUMMY_API GL_API void GL_APIENTRY glDepthMask (GLboolean flag) { return; } -DUMMY_API GL_API void GL_APIENTRY glDepthRangex (GLclampx zNear, GLclampx zFar) { return; } -DUMMY_API GL_API void GL_APIENTRY glDisable (GLenum cap) { return; } -DUMMY_API GL_API void GL_APIENTRY glDisableClientState (GLenum array) { return; } -DUMMY_API GL_API void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count) { return; } -DUMMY_API GL_API void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices) { return; } -DUMMY_API GL_API void GL_APIENTRY glEnable (GLenum cap) { return; } -DUMMY_API GL_API void GL_APIENTRY glEnableClientState (GLenum array) { return; } -DUMMY_API GL_API void GL_APIENTRY glFinish (void) { return; } -DUMMY_API GL_API void GL_APIENTRY glFlush (void) { return; } -DUMMY_API GL_API void GL_APIENTRY glFogx (GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glFogxv (GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glFrontFace (GLenum mode) { return; } -DUMMY_API GL_API void GL_APIENTRY glFrustumx (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetClipPlanex (GLenum pname, GLfixed eqn[4]) { return; } -DUMMY_API GL_API void GL_APIENTRY glGenBuffers (GLsizei n, GLuint *buffers) { return; } -DUMMY_API GL_API void GL_APIENTRY glGenTextures (GLsizei n, GLuint *textures) { return; } -DUMMY_API GL_API GLenum GL_APIENTRY glGetError (void) { return 0; } -DUMMY_API GL_API void GL_APIENTRY glGetFixedv (GLenum pname, GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetIntegerv (GLenum pname, GLint *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetLightxv (GLenum light, GLenum pname, GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetMaterialxv (GLenum face, GLenum pname, GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetPointerv (GLenum pname, GLvoid **params) { return; } -DUMMY_API GL_API const GLubyte * GL_APIENTRY glGetString (GLenum name) { return 0; } -DUMMY_API GL_API void GL_APIENTRY glGetTexEnviv (GLenum env, GLenum pname, GLint *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetTexEnvxv (GLenum env, GLenum pname, GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glGetTexParameterxv (GLenum target, GLenum pname, GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glHint (GLenum target, GLenum mode) { return; } -DUMMY_API GL_API GLboolean GL_APIENTRY glIsBuffer (GLuint buffer) { return GL_FALSE; } -DUMMY_API GL_API GLboolean GL_APIENTRY glIsEnabled (GLenum cap) { return GL_FALSE; } -DUMMY_API GL_API GLboolean GL_APIENTRY glIsTexture (GLuint texture) { return GL_FALSE; } -DUMMY_API GL_API void GL_APIENTRY glLightModelx (GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightModelxv (GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightx (GLenum light, GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glLightxv (GLenum light, GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glLineWidthx (GLfixed width) { return; } -DUMMY_API GL_API void GL_APIENTRY glLoadIdentity (void) { return; } -DUMMY_API GL_API void GL_APIENTRY glLoadMatrixx (const GLfixed *m) { return; } -DUMMY_API GL_API void GL_APIENTRY glLogicOp (GLenum opcode) { return; } -DUMMY_API GL_API void GL_APIENTRY glMaterialx (GLenum face, GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glMaterialxv (GLenum face, GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glMatrixMode (GLenum mode) { return; } -DUMMY_API GL_API void GL_APIENTRY glMultMatrixx (const GLfixed *m) { return; } -DUMMY_API GL_API void GL_APIENTRY glMultiTexCoord4x (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q) { return; } -DUMMY_API GL_API void GL_APIENTRY glNormal3x (GLfixed nx, GLfixed ny, GLfixed nz) { return; } -DUMMY_API GL_API void GL_APIENTRY glNormalPointer (GLenum type, GLsizei stride, const GLvoid *pointer) { return; } -DUMMY_API GL_API void GL_APIENTRY glOrthox (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar) { return; } -DUMMY_API GL_API void GL_APIENTRY glPixelStorei (GLenum pname, GLint param) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointParameterx (GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointParameterxv (GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointSizex (GLfixed size) { return; } -DUMMY_API GL_API void GL_APIENTRY glPolygonOffsetx (GLfixed factor, GLfixed units) { return; } -DUMMY_API GL_API void GL_APIENTRY glPopMatrix (void) { return; } -DUMMY_API GL_API void GL_APIENTRY glPushMatrix (void) { return; } -DUMMY_API GL_API void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels) { return; } -DUMMY_API GL_API void GL_APIENTRY glRotatex (GLfixed angle, GLfixed x, GLfixed y, GLfixed z) { return; } -DUMMY_API GL_API void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert) { return; } -DUMMY_API GL_API void GL_APIENTRY glSampleCoveragex (GLclampx value, GLboolean invert) { return; } -DUMMY_API GL_API void GL_APIENTRY glScalex (GLfixed x, GLfixed y, GLfixed z) { return; } -DUMMY_API GL_API void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height) { return; } -DUMMY_API GL_API void GL_APIENTRY glShadeModel (GLenum mode) { return; } -DUMMY_API GL_API void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask) { return; } -DUMMY_API GL_API void GL_APIENTRY glStencilMask (GLuint mask) { return; } -DUMMY_API GL_API void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexEnvx (GLenum target, GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexEnvxv (GLenum target, GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexParameterx (GLenum target, GLenum pname, GLfixed param) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexParameterxv (GLenum target, GLenum pname, const GLfixed *params) { return; } -DUMMY_API GL_API void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels) { return; } -DUMMY_API GL_API void GL_APIENTRY glTranslatex (GLfixed x, GLfixed y, GLfixed z) { return; } -DUMMY_API GL_API void GL_APIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { return; } -DUMMY_API GL_API void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height) { return; } -DUMMY_API GL_API void GL_APIENTRY glPointSizePointerOES (GLenum type, GLsizei stride, const GLvoid *pointer) { return; } diff --git a/dummy/gles2_dummy.c b/dummy/gles2_dummy.c deleted file mode 100644 index db091fe..0000000 --- a/dummy/gles2_dummy.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Emulator YaGL dummy library for GLESv2 - * - * Copyright (c) 2013 Samsung Electronics Co., Ltd. All rights reserved. - * - * Contact : - * Jinhyung Jo <jinhyung.jo@samsung.conm> - * Stanislav Vorobiov <s.vorobiov@samsung.com> - * YeongKyoon Lee <yeongkyoon.lee@samsung.com> - * - * 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. - * - * Contributors: - * - S-Core Co., Ltd - * - */ - -#include "GLES2/gl2.h" -#include "dummy.h" - -/* GL core functions */ -DUMMY_API GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode ) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data) { return; } -DUMMY_API GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target) { return 0; } -DUMMY_API GL_APICALL void GL_APIENTRY glClear (GLbitfield mask) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glClearStencil (GLint s) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) { return; } -DUMMY_API GL_APICALL GLuint GL_APIENTRY glCreateProgram (void) { return 0; } -DUMMY_API GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type) { return 0; } -DUMMY_API GL_APICALL void GL_APIENTRY glCullFace (GLenum mode) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDisable (GLenum cap) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glEnable (GLenum cap) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glFinish (void) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glFlush (void) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) { return; } -DUMMY_API GL_APICALL GLint GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name) { return 0; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL GLenum GL_APIENTRY glGetError (void) { return 0; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source) { return; } -DUMMY_API GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name) { return (GLubyte*)0; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params) { return; } -DUMMY_API GL_APICALL GLint GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name) { return 0; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode) { return; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer) { return GL_FALSE; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap) { return GL_FALSE; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer) { return GL_FALSE; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program) { return GL_FALSE; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer) { return GL_FALSE; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader) { return GL_FALSE; } -DUMMY_API GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture) { return GL_FALSE; } -DUMMY_API GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar*const* string, const GLint* length) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glUseProgram (GLuint program) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr) { return; } -DUMMY_API GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height) { return; } diff --git a/packaging/emulator-yagl.spec b/packaging/emulator-yagl.spec index 99e5e5e..eacafbf 100644 --- a/packaging/emulator-yagl.spec +++ b/packaging/emulator-yagl.spec @@ -65,7 +65,7 @@ Development files for use with Wayland protocol %{?asan:%define ASAN_LIBS -DWAYLAND_CLIENT_LIBRARIES="-lpthread"} cp %{SOURCE1001} . %if "%{ENABLE_TIZEN_BACKEND}" == "1" -cmake -DCMAKE_INSTALL_PREFIX=%{buildroot} -DINSTALL_LIB_DIR=%{buildroot}%{_libdir} -DPLATFORM_TIZEN=1 -DDUMMY_LIBS=1 %?ASAN_LIBS +cmake -DCMAKE_INSTALL_PREFIX=%{buildroot} -DINSTALL_LIB_DIR=%{buildroot}%{_libdir} -DPLATFORM_TIZEN=1 %?ASAN_LIBS %else cmake -DCMAKE_INSTALL_PREFIX=%{buildroot} -DINSTALL_LIB_DIR=%{buildroot}%{_libdir} -DPLATFORM_X11=0 -DPLATFORM_GBM=0 -DPLATFORM_WAYLAND=1 %?ASAN_LIBS %endif @@ -76,12 +76,9 @@ rm -fr %{buildroot} mkdir -p %{buildroot} mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_libdir}/pkgconfig -mkdir -p %{buildroot}/etc/profile.d make install -cp packaging/opengl-es-setup-yagl-env.sh %{buildroot}/etc/profile.d/ - %if "%{ENABLE_TIZEN_BACKEND}" == "0" cp pkgconfig/wayland-egl.pc %{buildroot}%{_libdir}/pkgconfig/ %post -n libwayland-egl -p /sbin/ldconfig @@ -97,7 +94,6 @@ cp pkgconfig/wayland-egl.pc %{buildroot}%{_libdir}/pkgconfig/ %defattr(-,root,root,-) %{_libdir}/driver/libEGL* %{_libdir}/driver/libGL* -%attr(770,root,root)/etc/profile.d/opengl-es-setup-yagl-env.sh %if "%{ENABLE_TIZEN_BACKEND}" == "0" %files -n libwayland-egl diff --git a/packaging/opengl-es-setup-yagl-env.sh b/packaging/opengl-es-setup-yagl-env.sh deleted file mode 100755 index 1887582..0000000 --- a/packaging/opengl-es-setup-yagl-env.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -PATH=/bin:/usr/bin:/sbin:/usr/sbin - -DRIVER_PATH="/usr/lib64/driver" - -if [ ! -d ${DRIVER_PATH} ]; then - DRIVER_PATH="/usr/lib/driver" -fi - -echo -e "[${_G} OpenGL ES acceleration module setting: ${DRIVER_PATH} ${C_}]" -if [ -e /dev/yagl ] ; then - echo -e "[${_G} Emulator supports gles hw acceleration. ${C_}]" - ln -s -f libEGL.so.1.0 ${DRIVER_PATH}/libEGL.so.1 - ln -s -f libGLESv1_CM.so.1.0 ${DRIVER_PATH}/libGLESv1_CM.so.1 - ln -s -f libGLESv2.so.2.0 ${DRIVER_PATH}/libGLESv2.so.2 -else - echo -e "[${_G} Emulator does not support gles hw acceleration. ${C_}]" - ln -s -f libEGL_dummy.so ${DRIVER_PATH}/libEGL.so.1 - ln -s -f libGLESv1_dummy.so ${DRIVER_PATH}/libGLESv1_CM.so.1 - ln -s -f libGLESv2_dummy.so ${DRIVER_PATH}/libGLESv2.so.2 -fi |