grimfang4 / sdl-gpu

A library for high-performance, modern 2D graphics with SDL written in C.
MIT License
1.18k stars 123 forks source link

Android Studio Build Error #97

Open DiegoAce opened 6 years ago

DiegoAce commented 6 years ago

I'm trying to build SDL_gpu with the new Android Studio project provided with SDL. I was able to get SDL_image and SDL_ttf working correctly. I followed the same procedure for SDL_gpu but I get a lot of errors like the one below about undeclared identifiers for OES functions. Is there something I'm missing? I couldn't find information for building SDL_gpu for android. I don't understand what the folder AndroidCMake is used for.

Execution failed for task ':app:externalNativeBuildDebug'.
> Build command failed.
  Error while executing process /Users/Diego/Library/Android/sdk/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/Users/Diego/Downloads/SDL/android-project/app/jni/Android.mk NDK_APPLICATION_MK=/Users/Diego/Downloads/SDL/android-project/app/jni/Application.mk APP_ABI=x86 NDK_ALL_ABIS=x86 NDK_DEBUG=1 APP_PLATFORM=android-14 NDK_OUT=/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/lib APP_PLATFORM=android-14 /Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/libmain.so}
  [x86] Compile        : SDL2_gpu <= renderer_GLES_1.c
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:474:33: error: use of undeclared identifier 'glBindFramebufferOES'; did you mean 'glBindFramebufferNOOP'?
DiegoAce commented 6 years ago

I just found out an older commit works. I'll find which commit was the first to not work.

DiegoAce commented 6 years ago

I opened a similar issue #74 for iOS. Commit 3d6c98a compiles fine for Android. Commit 940761f does not compile. It gives errors about both undefined GLAPIENTRY and undefined identifiers like glGenerateMipmapNOOP, glBindFramebufferPROC, glBindFramebufferOES, etc. Commit d6cc5db also does not compile for Android. It removed errors about GLAPIENTRY but not about the other functions. Below is the build errors for 940761f followed by d6cc5db.

Executing tasks: [:app:assembleDebug]

Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
Configuration 'androidTestCompile' in project ':app' is deprecated. Use 'androidTestImplementation' instead.
Configuration 'testCompile' in project ':app' is deprecated. Use 'testImplementation' instead.
:app:buildInfoDebugLoader
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:checkDebugManifest UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:prepareLintJar UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:createDebugCompatibleScreenManifests UP-TO-DATE
:app:processDebugManifest
:app:splitsDiscoveryTaskDebug UP-TO-DATE
:app:processDebugResources
:app:generateDebugSources
:app:javaPreCompileDebug
:app:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

:app:mergeDebugShaders
:app:compileDebugShaders
:app:generateDebugAssets
:app:mergeDebugAssets
:app:packageInstantRunResourcesDebug
:app:checkManifestChangesDebug
:app:transformClassesWithExtractJarsForDebug
:app:transformClassesWithInstantRunVerifierForDebug
:app:transformClassesWithDependencyCheckerForDebug UP-TO-DATE
:app:generateJsonModelDebug UP-TO-DATE
:app:externalNativeBuildDebug
Build main x86
[x86] Compile++      : main <= main.cpp
[x86] Compile        : SDL2 <= SDL.c
[x86] Compile        : SDL2 <= SDL_assert.c
[x86] Compile        : SDL2 <= SDL_dataqueue.c
[x86] Compile        : SDL2 <= SDL_error.c
[x86] Compile        : SDL2 <= SDL_hints.c
[x86] Compile        : SDL2 <= SDL_log.c
[x86] Compile        : SDL2 <= SDL_audio.c
[x86] Compile        : SDL2 <= SDL_audiocvt.c
[x86] Compile        : SDL2 <= SDL_audiodev.c
[x86] Compile        : SDL2 <= SDL_audiotypecvt.c
[x86] Compile        : SDL2 <= SDL_mixer.c
[x86] Compile        : SDL2 <= SDL_wave.c
[x86] Compile        : SDL2 <= SDL_androidaudio.c
[x86] Compile        : SDL2 <= SDL_dummyaudio.c
[x86] Compile        : SDL2 <= SDL_atomic.c
[x86] Compile        : SDL2 <= SDL_spinlock.c
[x86] Compile        : SDL2 <= SDL_android.c
[x86] Compile        : SDL2 <= SDL_cpuinfo.c
[x86] Compile        : SDL2 <= SDL_dynapi.c
[x86] Compile        : SDL2 <= SDL_clipboardevents.c
[x86] Compile        : SDL2 <= SDL_dropevents.c
[x86] Compile        : SDL2 <= SDL_events.c
[x86] Compile        : SDL2 <= SDL_gesture.c
[x86] Compile        : SDL2 <= SDL_keyboard.c
[x86] Compile        : SDL2 <= SDL_mouse.c
[x86] Compile        : SDL2 <= SDL_quit.c
[x86] Compile        : SDL2 <= SDL_touch.c
[x86] Compile        : SDL2 <= SDL_windowevents.c
[x86] Compile        : SDL2 <= SDL_rwops.c
[x86] Compile        : SDL2 <= SDL_haptic.c
[x86] Compile        : SDL2 <= SDL_syshaptic.c
[x86] Compile        : SDL2 <= SDL_gamecontroller.c
[x86] Compile        : SDL2 <= SDL_joystick.c
[x86] Compile        : SDL2 <= SDL_sysjoystick.c
[x86] Compile        : SDL2 <= SDL_steamcontroller.c
[x86] Compile        : SDL2 <= SDL_sysloadso.c
[x86] Compile        : SDL2 <= SDL_power.c
[x86] Compile        : SDL2 <= SDL_syspower.c
[x86] Compile        : SDL2 <= SDL_sysfilesystem.c
[x86] Compile        : SDL2 <= SDL_d3dmath.c
[x86] Compile        : SDL2 <= SDL_render.c
[x86] Compile        : SDL2 <= SDL_yuv_mmx.c
[x86] Compile        : SDL2 <= SDL_yuv_sw.c
[x86] Compile        : SDL2 <= SDL_render_d3d.c
[x86] Compile        : SDL2 <= SDL_render_d3d11.c
[x86] Compile        : SDL2 <= SDL_render_gl.c
[x86] Compile        : SDL2 <= SDL_shaders_gl.c
[x86] Compile        : SDL2 <= SDL_render_gles.c
[x86] Compile        : SDL2 <= SDL_render_gles2.c
In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:304:
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_gles2funcs.h:58:1: warning: incompatible pointer types assigning to 'void (*)(GLuint, GLsizei, const GLchar **, const GLint *)' (aka 'void (*)(unsigned int, int, const char **, const int *)') from 'void (GLuint, GLsizei, const GLchar *const *, const GLint *)' (aka 'void (unsigned int, int, const char *const *, const int *)') [-Wincompatible-pointer-types]
SDL_PROC(void, glShaderSource, (GLuint, GLsizei, const GLchar **, const GLint *))
^              ~~~~~~~~~~~~~~
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:293:45: note: expanded from macro 'SDL_PROC'
#define SDL_PROC(ret,func,params) data->func=func;
                                            ^~~~~
1 warning generated.
[x86] Compile        : SDL2 <= SDL_shaders_gles2.c
[x86] Compile        : SDL2 <= SDL_render_psp.c
[x86] Compile        : SDL2 <= SDL_blendfillrect.c
[x86] Compile        : SDL2 <= SDL_blendline.c
[x86] Compile        : SDL2 <= SDL_blendpoint.c
[x86] Compile        : SDL2 <= SDL_drawline.c
[x86] Compile        : SDL2 <= SDL_drawpoint.c
[x86] Compile        : SDL2 <= SDL_render_sw.c
[x86] Compile        : SDL2 <= SDL_rotate.c
[x86] Compile        : SDL2 <= SDL_getenv.c
[x86] Compile        : SDL2 <= SDL_iconv.c
[x86] Compile        : SDL2 <= SDL_malloc.c
[x86] Compile        : SDL2 <= SDL_qsort.c
[x86] Compile        : SDL2 <= SDL_stdlib.c
[x86] Compile        : SDL2 <= SDL_string.c
[x86] Compile        : SDL2 <= SDL_thread.c
[x86] Compile        : SDL2 <= SDL_syscond.c
[x86] Compile        : SDL2 <= SDL_sysmutex.c
[x86] Compile        : SDL2 <= SDL_syssem.c
[x86] Compile        : SDL2 <= SDL_systhread.c
[x86] Compile        : SDL2 <= SDL_systls.c
[x86] Compile        : SDL2 <= SDL_timer.c
[x86] Compile        : SDL2 <= SDL_systimer.c
[x86] Compile        : SDL2 <= SDL_RLEaccel.c
[x86] Compile        : SDL2 <= SDL_blit.c
[x86] Compile        : SDL2 <= SDL_blit_0.c
[x86] Compile        : SDL2 <= SDL_blit_1.c
[x86] Compile        : SDL2 <= SDL_blit_A.c
[x86] Compile        : SDL2 <= SDL_blit_N.c
[x86] Compile        : SDL2 <= SDL_blit_auto.c
[x86] Compile        : SDL2 <= SDL_blit_copy.c
[x86] Compile        : SDL2 <= SDL_blit_slow.c
[x86] Compile        : SDL2 <= SDL_bmp.c
[x86] Compile        : SDL2 <= SDL_clipboard.c
[x86] Compile        : SDL2 <= SDL_egl.c
[x86] Compile        : SDL2 <= SDL_fillrect.c
[x86] Compile        : SDL2 <= SDL_pixels.c
[x86] Compile        : SDL2 <= SDL_rect.c
[x86] Compile        : SDL2 <= SDL_shape.c
[x86] Compile        : SDL2 <= SDL_stretch.c
[x86] Compile        : SDL2 <= SDL_surface.c
[x86] Compile        : SDL2 <= SDL_video.c
[x86] Compile        : SDL2 <= SDL_vulkan_utils.c
[x86] Compile        : SDL2 <= SDL_androidclipboard.c
[x86] Compile        : SDL2 <= SDL_androidevents.c
[x86] Compile        : SDL2 <= SDL_androidgl.c
[x86] Compile        : SDL2 <= SDL_androidkeyboard.c
[x86] Compile        : SDL2 <= SDL_androidmessagebox.c
[x86] Compile        : SDL2 <= SDL_androidmouse.c
[x86] Compile        : SDL2 <= SDL_androidtouch.c
[x86] Compile        : SDL2 <= SDL_androidvideo.c
[x86] Compile        : SDL2 <= SDL_androidvulkan.c
[x86] Compile        : SDL2 <= SDL_androidwindow.c
[x86] Compile        : SDL2 <= SDL_test_assert.c
[x86] Compile        : SDL2 <= SDL_test_common.c
[x86] Compile        : SDL2 <= SDL_test_compare.c
[x86] Compile        : SDL2 <= SDL_test_crc32.c
[x86] Compile        : SDL2 <= SDL_test_font.c
[x86] Compile        : SDL2 <= SDL_test_fuzzer.c
[x86] Compile        : SDL2 <= SDL_test_harness.c
[x86] Compile        : SDL2 <= SDL_test_imageBlit.c
[x86] Compile        : SDL2 <= SDL_test_imageBlitBlend.c
[x86] Compile        : SDL2 <= SDL_test_imageFace.c
[x86] Compile        : SDL2 <= SDL_test_imagePrimitives.c
[x86] Compile        : SDL2 <= SDL_test_imagePrimitivesBlend.c
[x86] Compile        : SDL2 <= SDL_test_log.c
[x86] Compile        : SDL2 <= SDL_test_md5.c
[x86] Compile        : SDL2 <= SDL_test_memory.c
[x86] Compile        : SDL2 <= SDL_test_random.c
[x86] SharedLibrary  : libSDL2.so
[x86] Compile        : SDL2_gpu <= SDL_gpu.c
[x86] Compile        : SDL2_gpu <= SDL_gpu_matrix.c
[x86] Compile        : SDL2_gpu <= SDL_gpu_renderer.c
[x86] Compile        : SDL2_gpu <= SDL_gpu_shapes.c
[x86] Compile        : SDL2_gpu <= renderer_GLES_1.c
In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:17: error: variable has incomplete type 'void'
    static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:27: error: expected ';' after top level declarator
    static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                          ^
                          ;
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:31: error: expected ')'
    static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                              ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:19: note: to match this '('
    static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                  ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:20: error: redefinition of 'GLAPIENTRY' as different kind of symbol
    static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                   ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:17: note: previous definition is here
    static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:79: error: use of undeclared identifier 'glCheckFramebufferStatusNOOP'
    static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                                                                              ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:29: error: expected ')'
    static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:17: note: to match this '('
    static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:18: error: redefinition of 'GLAPIENTRY' as different kind of symbol
    static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                 ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:17: note: previous definition is here
    static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:97: error: use of undeclared identifier 'glDeleteFramebuffersNOOP'
    static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                                                                                                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:396:29: error: expected ')'
    static void (GLAPIENTRY *glFramebufferTexture2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = glFramebufferTexture2DNOOP;
                            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:396:17: note: to match this '('
    static void (GLAPIENTRY *glFramebufferTexture2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = glFramebufferTexture2DNOOP;
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:396:141: error: use of undeclared identifier 'glFramebufferTexture2DNOOP'
    static void (GLAPIENTRY *glFramebufferTexture2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = glFramebufferTexture2DNOOP;
                                                                                                                                            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:397:29: error: expected ')'
    static void (GLAPIENTRY *glGenFramebuffersPROC)(GLsizei n, GLuint *ids) = glGenFramebuffersNOOP;
                            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:397:17: note: to match this '('
    static void (GLAPIENTRY *glGenFramebuffersPROC)(GLsizei n, GLuint *ids) = glGenFramebuffersNOOP;
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:397:79: error: use of undeclared identifier 'glGenFramebuffersNOOP'
    static void (GLAPIENTRY *glGenFramebuffersPROC)(GLsizei n, GLuint *ids) = glGenFramebuffersNOOP;
                                                                              ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:398:29: error: expected ')'
    static void (GLAPIENTRY *glGenerateMipmapPROC)(GLenum target) = glGenerateMipmapNOOP;
                            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:398:17: note: to match this '('
    static void (GLAPIENTRY *glGenerateMipmapPROC)(GLenum target) = glGenerateMipmapNOOP;
                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:398:69: error: use of undeclared identifier 'glGenerateMipmapNOOP'
    static void (GLAPIENTRY *glGenerateMipmapPROC)(GLenum target) = glGenerateMipmapNOOP;
                                                                    ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:467:9: error: use of undeclared identifier 'glBindFramebufferPROC'
        glBindFramebufferPROC = glBindFramebufferOES;
        ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:467:33: error: use of undeclared identifier 'glBindFramebufferOES'
        glBindFramebufferPROC = glBindFramebufferOES;
                                ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:468:9: error: use of undeclared identifier 'glCheckFramebufferStatusPROC'
        glCheckFramebufferStatusPROC = glCheckFramebufferStatusOES;
        ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:468:40: error: use of undeclared identifier 'glCheckFramebufferStatusOES'
        glCheckFramebufferStatusPROC = glCheckFramebufferStatusOES;
                                       ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:469:9: error: use of undeclared identifier 'glDeleteFramebuffersPROC'
        glDeleteFramebuffersPROC = glDeleteFramebuffersOES;
        ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/objs-debug/SDL2_gpu/.//src/renderer_GLES_1.o] Error 1
:app:externalNativeBuildDebug FAILED
:app:buildInfoGeneratorDebug

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:externalNativeBuildDebug'.
> Build command failed.
  Error while executing process /Users/Diego/Library/Android/sdk/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/Users/Diego/Downloads/SDL/android-project/app/jni/Android.mk NDK_APPLICATION_MK=/Users/Diego/Downloads/SDL/android-project/app/jni/Application.mk APP_ABI=x86 NDK_ALL_ABIS=x86 NDK_DEBUG=1 APP_PLATFORM=android-14 NDK_OUT=/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/lib APP_PLATFORM=android-14 /Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/libmain.so}
  [x86] Compile++      : main <= main.cpp
  [x86] Compile        : SDL2 <= SDL.c
  [x86] Compile        : SDL2 <= SDL_assert.c
  [x86] Compile        : SDL2 <= SDL_dataqueue.c
  [x86] Compile        : SDL2 <= SDL_error.c
  [x86] Compile        : SDL2 <= SDL_hints.c
  [x86] Compile        : SDL2 <= SDL_log.c
  [x86] Compile        : SDL2 <= SDL_audio.c
  [x86] Compile        : SDL2 <= SDL_audiocvt.c
  [x86] Compile        : SDL2 <= SDL_audiodev.c
  [x86] Compile        : SDL2 <= SDL_audiotypecvt.c
  [x86] Compile        : SDL2 <= SDL_mixer.c
  [x86] Compile        : SDL2 <= SDL_wave.c
  [x86] Compile        : SDL2 <= SDL_androidaudio.c
  [x86] Compile        : SDL2 <= SDL_dummyaudio.c
  [x86] Compile        : SDL2 <= SDL_atomic.c
  [x86] Compile        : SDL2 <= SDL_spinlock.c
  [x86] Compile        : SDL2 <= SDL_android.c
  [x86] Compile        : SDL2 <= SDL_cpuinfo.c
  [x86] Compile        : SDL2 <= SDL_dynapi.c
  [x86] Compile        : SDL2 <= SDL_clipboardevents.c
  [x86] Compile        : SDL2 <= SDL_dropevents.c
  [x86] Compile        : SDL2 <= SDL_events.c
  [x86] Compile        : SDL2 <= SDL_gesture.c
  [x86] Compile        : SDL2 <= SDL_keyboard.c
  [x86] Compile        : SDL2 <= SDL_mouse.c
  [x86] Compile        : SDL2 <= SDL_quit.c
  [x86] Compile        : SDL2 <= SDL_touch.c
  [x86] Compile        : SDL2 <= SDL_windowevents.c
  [x86] Compile        : SDL2 <= SDL_rwops.c
  [x86] Compile        : SDL2 <= SDL_haptic.c
  [x86] Compile        : SDL2 <= SDL_syshaptic.c
  [x86] Compile        : SDL2 <= SDL_gamecontroller.c
  [x86] Compile        : SDL2 <= SDL_joystick.c
  [x86] Compile        : SDL2 <= SDL_sysjoystick.c
  [x86] Compile        : SDL2 <= SDL_steamcontroller.c
  [x86] Compile        : SDL2 <= SDL_sysloadso.c
  [x86] Compile        : SDL2 <= SDL_power.c
  [x86] Compile        : SDL2 <= SDL_syspower.c
  [x86] Compile        : SDL2 <= SDL_sysfilesystem.c
  [x86] Compile        : SDL2 <= SDL_d3dmath.c
  [x86] Compile        : SDL2 <= SDL_render.c
  [x86] Compile        : SDL2 <= SDL_yuv_mmx.c
  [x86] Compile        : SDL2 <= SDL_yuv_sw.c
  [x86] Compile        : SDL2 <= SDL_render_d3d.c
  [x86] Compile        : SDL2 <= SDL_render_d3d11.c
  [x86] Compile        : SDL2 <= SDL_render_gl.c
  [x86] Compile        : SDL2 <= SDL_shaders_gl.c
  [x86] Compile        : SDL2 <= SDL_render_gles.c
  [x86] Compile        : SDL2 <= SDL_render_gles2.c
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:304:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_gles2funcs.h:58:1: warning: incompatible pointer types assigning to 'void (*)(GLuint, GLsizei, const GLchar **, const GLint *)' (aka 'void (*)(unsigned int, int, const char **, const int *)') from 'void (GLuint, GLsizei, const GLchar *const *, const GLint *)' (aka 'void (unsigned int, int, const char *const *, const int *)') [-Wincompatible-pointer-types]
  SDL_PROC(void, glShaderSource, (GLuint, GLsizei, const GLchar **, const GLint *))
  ^              ~~~~~~~~~~~~~~
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:293:45: note: expanded from macro 'SDL_PROC'
  #define SDL_PROC(ret,func,params) data->func=func;
                                              ^~~~~
  1 warning generated.
  [x86] Compile        : SDL2 <= SDL_shaders_gles2.c
  [x86] Compile        : SDL2 <= SDL_render_psp.c
  [x86] Compile        : SDL2 <= SDL_blendfillrect.c
  [x86] Compile        : SDL2 <= SDL_blendline.c
  [x86] Compile        : SDL2 <= SDL_blendpoint.c
  [x86] Compile        : SDL2 <= SDL_drawline.c
  [x86] Compile        : SDL2 <= SDL_drawpoint.c
  [x86] Compile        : SDL2 <= SDL_render_sw.c
  [x86] Compile        : SDL2 <= SDL_rotate.c
  [x86] Compile        : SDL2 <= SDL_getenv.c
  [x86] Compile        : SDL2 <= SDL_iconv.c
  [x86] Compile        : SDL2 <= SDL_malloc.c
  [x86] Compile        : SDL2 <= SDL_qsort.c
  [x86] Compile        : SDL2 <= SDL_stdlib.c
  [x86] Compile        : SDL2 <= SDL_string.c
  [x86] Compile        : SDL2 <= SDL_thread.c
  [x86] Compile        : SDL2 <= SDL_syscond.c
  [x86] Compile        : SDL2 <= SDL_sysmutex.c
  [x86] Compile        : SDL2 <= SDL_syssem.c
  [x86] Compile        : SDL2 <= SDL_systhread.c
  [x86] Compile        : SDL2 <= SDL_systls.c
  [x86] Compile        : SDL2 <= SDL_timer.c
  [x86] Compile        : SDL2 <= SDL_systimer.c
  [x86] Compile        : SDL2 <= SDL_RLEaccel.c
  [x86] Compile        : SDL2 <= SDL_blit.c
  [x86] Compile        : SDL2 <= SDL_blit_0.c
  [x86] Compile        : SDL2 <= SDL_blit_1.c
  [x86] Compile        : SDL2 <= SDL_blit_A.c
  [x86] Compile        : SDL2 <= SDL_blit_N.c
  [x86] Compile        : SDL2 <= SDL_blit_auto.c
  [x86] Compile        : SDL2 <= SDL_blit_copy.c
  [x86] Compile        : SDL2 <= SDL_blit_slow.c
  [x86] Compile        : SDL2 <= SDL_bmp.c
  [x86] Compile        : SDL2 <= SDL_clipboard.c
  [x86] Compile        : SDL2 <= SDL_egl.c
  [x86] Compile        : SDL2 <= SDL_fillrect.c
  [x86] Compile        : SDL2 <= SDL_pixels.c
  [x86] Compile        : SDL2 <= SDL_rect.c
  [x86] Compile        : SDL2 <= SDL_shape.c
  [x86] Compile        : SDL2 <= SDL_stretch.c
  [x86] Compile        : SDL2 <= SDL_surface.c
  [x86] Compile        : SDL2 <= SDL_video.c
  [x86] Compile        : SDL2 <= SDL_vulkan_utils.c
  [x86] Compile        : SDL2 <= SDL_androidclipboard.c
  [x86] Compile        : SDL2 <= SDL_androidevents.c
  [x86] Compile        : SDL2 <= SDL_androidgl.c
  [x86] Compile        : SDL2 <= SDL_androidkeyboard.c
  [x86] Compile        : SDL2 <= SDL_androidmessagebox.c
  [x86] Compile        : SDL2 <= SDL_androidmouse.c
  [x86] Compile        : SDL2 <= SDL_androidtouch.c
  [x86] Compile        : SDL2 <= SDL_androidvideo.c
  [x86] Compile        : SDL2 <= SDL_androidvulkan.c
  [x86] Compile        : SDL2 <= SDL_androidwindow.c
  [x86] Compile        : SDL2 <= SDL_test_assert.c
  [x86] Compile        : SDL2 <= SDL_test_common.c
  [x86] Compile        : SDL2 <= SDL_test_compare.c
  [x86] Compile        : SDL2 <= SDL_test_crc32.c
  [x86] Compile        : SDL2 <= SDL_test_font.c
  [x86] Compile        : SDL2 <= SDL_test_fuzzer.c
  [x86] Compile        : SDL2 <= SDL_test_harness.c
  [x86] Compile        : SDL2 <= SDL_test_imageBlit.c
  [x86] Compile        : SDL2 <= SDL_test_imageBlitBlend.c
  [x86] Compile        : SDL2 <= SDL_test_imageFace.c
  [x86] Compile        : SDL2 <= SDL_test_imagePrimitives.c
  [x86] Compile        : SDL2 <= SDL_test_imagePrimitivesBlend.c
  [x86] Compile        : SDL2 <= SDL_test_log.c
  [x86] Compile        : SDL2 <= SDL_test_md5.c
  [x86] Compile        : SDL2 <= SDL_test_memory.c
  [x86] Compile        : SDL2 <= SDL_test_random.c
  [x86] SharedLibrary  : libSDL2.so
  [x86] Compile        : SDL2_gpu <= SDL_gpu.c
  [x86] Compile        : SDL2_gpu <= SDL_gpu_matrix.c
  [x86] Compile        : SDL2_gpu <= SDL_gpu_renderer.c
  [x86] Compile        : SDL2_gpu <= SDL_gpu_shapes.c
  [x86] Compile        : SDL2_gpu <= renderer_GLES_1.c
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:17: error: variable has incomplete type 'void'
      static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:27: error: expected ';' after top level declarator
      static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                            ^
                            ;
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:31: error: expected ')'
      static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                                ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:19: note: to match this '('
      static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                    ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:20: error: redefinition of 'GLAPIENTRY' as different kind of symbol
      static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                     ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:17: note: previous definition is here
      static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:394:79: error: use of undeclared identifier 'glCheckFramebufferStatusNOOP'
      static GLenum (GLAPIENTRY *glCheckFramebufferStatusPROC)(GLenum target) = glCheckFramebufferStatusNOOP;
                                                                                ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:29: error: expected ')'
      static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:17: note: to match this '('
      static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:18: error: redefinition of 'GLAPIENTRY' as different kind of symbol
      static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                   ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:367:17: note: previous definition is here
      static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:97: error: use of undeclared identifier 'glDeleteFramebuffersNOOP'
      static void (GLAPIENTRY *glDeleteFramebuffersPROC)(GLsizei n, const GLuint* framebuffers) = glDeleteFramebuffersNOOP;
                                                                                                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:396:29: error: expected ')'
      static void (GLAPIENTRY *glFramebufferTexture2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = glFramebufferTexture2DNOOP;
                              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:396:17: note: to match this '('
      static void (GLAPIENTRY *glFramebufferTexture2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = glFramebufferTexture2DNOOP;
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:396:141: error: use of undeclared identifier 'glFramebufferTexture2DNOOP'
      static void (GLAPIENTRY *glFramebufferTexture2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = glFramebufferTexture2DNOOP;
                                                                                                                                              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:397:29: error: expected ')'
      static void (GLAPIENTRY *glGenFramebuffersPROC)(GLsizei n, GLuint *ids) = glGenFramebuffersNOOP;
                              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:397:17: note: to match this '('
      static void (GLAPIENTRY *glGenFramebuffersPROC)(GLsizei n, GLuint *ids) = glGenFramebuffersNOOP;
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:397:79: error: use of undeclared identifier 'glGenFramebuffersNOOP'
      static void (GLAPIENTRY *glGenFramebuffersPROC)(GLsizei n, GLuint *ids) = glGenFramebuffersNOOP;
                                                                                ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:398:29: error: expected ')'
      static void (GLAPIENTRY *glGenerateMipmapPROC)(GLenum target) = glGenerateMipmapNOOP;
                              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:398:17: note: to match this '('
      static void (GLAPIENTRY *glGenerateMipmapPROC)(GLenum target) = glGenerateMipmapNOOP;
                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:398:69: error: use of undeclared identifier 'glGenerateMipmapNOOP'
      static void (GLAPIENTRY *glGenerateMipmapPROC)(GLenum target) = glGenerateMipmapNOOP;
                                                                      ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:467:9: error: use of undeclared identifier 'glBindFramebufferPROC'
          glBindFramebufferPROC = glBindFramebufferOES;
          ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:467:33: error: use of undeclared identifier 'glBindFramebufferOES'
          glBindFramebufferPROC = glBindFramebufferOES;
                                  ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:468:9: error: use of undeclared identifier 'glCheckFramebufferStatusPROC'
          glCheckFramebufferStatusPROC = glCheckFramebufferStatusOES;
          ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:468:40: error: use of undeclared identifier 'glCheckFramebufferStatusOES'
          glCheckFramebufferStatusPROC = glCheckFramebufferStatusOES;
                                         ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:469:9: error: use of undeclared identifier 'glDeleteFramebuffersPROC'
          glDeleteFramebuffersPROC = glDeleteFramebuffersOES;
          ^
  fatal error: too many errors emitted, stopping now [-ferror-limit=]
  20 errors generated.
  make: *** [/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/objs-debug/SDL2_gpu/.//src/renderer_GLES_1.o] Error 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 20s

26 actionable tasks: 14 executed, 12 up-to-date
Executing tasks: [:app:assembleDebug]

Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
Configuration 'androidTestCompile' in project ':app' is deprecated. Use 'androidTestImplementation' instead.
Configuration 'testCompile' in project ':app' is deprecated. Use 'testImplementation' instead.
:app:buildInfoDebugLoader
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:checkDebugManifest UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:prepareLintJar UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:createDebugCompatibleScreenManifests UP-TO-DATE
:app:processDebugManifest
:app:splitsDiscoveryTaskDebug UP-TO-DATE
:app:processDebugResources
:app:generateDebugSources
:app:javaPreCompileDebug
:app:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

:app:mergeDebugShaders
:app:compileDebugShaders
:app:generateDebugAssets
:app:mergeDebugAssets
:app:packageInstantRunResourcesDebug
:app:checkManifestChangesDebug
:app:transformClassesWithExtractJarsForDebug
:app:transformClassesWithInstantRunVerifierForDebug
:app:transformClassesWithDependencyCheckerForDebug UP-TO-DATE
:app:generateJsonModelDebug UP-TO-DATE
:app:externalNativeBuildDebug
Build main x86
[x86] Compile++      : main <= main.cpp
[x86] Compile        : SDL2 <= SDL.c
[x86] Compile        : SDL2 <= SDL_assert.c
[x86] Compile        : SDL2 <= SDL_dataqueue.c
[x86] Compile        : SDL2 <= SDL_error.c
[x86] Compile        : SDL2 <= SDL_hints.c
[x86] Compile        : SDL2 <= SDL_log.c
[x86] Compile        : SDL2 <= SDL_audio.c
[x86] Compile        : SDL2 <= SDL_audiocvt.c
[x86] Compile        : SDL2 <= SDL_audiodev.c
[x86] Compile        : SDL2 <= SDL_audiotypecvt.c
[x86] Compile        : SDL2 <= SDL_mixer.c
[x86] Compile        : SDL2 <= SDL_wave.c
[x86] Compile        : SDL2 <= SDL_androidaudio.c
[x86] Compile        : SDL2 <= SDL_dummyaudio.c
[x86] Compile        : SDL2 <= SDL_atomic.c
[x86] Compile        : SDL2 <= SDL_spinlock.c
[x86] Compile        : SDL2 <= SDL_android.c
[x86] Compile        : SDL2 <= SDL_cpuinfo.c
[x86] Compile        : SDL2 <= SDL_dynapi.c
[x86] Compile        : SDL2 <= SDL_clipboardevents.c
[x86] Compile        : SDL2 <= SDL_dropevents.c
[x86] Compile        : SDL2 <= SDL_events.c
[x86] Compile        : SDL2 <= SDL_gesture.c
[x86] Compile        : SDL2 <= SDL_keyboard.c
[x86] Compile        : SDL2 <= SDL_mouse.c
[x86] Compile        : SDL2 <= SDL_quit.c
[x86] Compile        : SDL2 <= SDL_touch.c
[x86] Compile        : SDL2 <= SDL_windowevents.c
[x86] Compile        : SDL2 <= SDL_rwops.c
[x86] Compile        : SDL2 <= SDL_haptic.c
[x86] Compile        : SDL2 <= SDL_syshaptic.c
[x86] Compile        : SDL2 <= SDL_gamecontroller.c
[x86] Compile        : SDL2 <= SDL_joystick.c
[x86] Compile        : SDL2 <= SDL_sysjoystick.c
[x86] Compile        : SDL2 <= SDL_steamcontroller.c
[x86] Compile        : SDL2 <= SDL_sysloadso.c
[x86] Compile        : SDL2 <= SDL_power.c
[x86] Compile        : SDL2 <= SDL_syspower.c
[x86] Compile        : SDL2 <= SDL_sysfilesystem.c
[x86] Compile        : SDL2 <= SDL_d3dmath.c
[x86] Compile        : SDL2 <= SDL_render.c
[x86] Compile        : SDL2 <= SDL_yuv_mmx.c
[x86] Compile        : SDL2 <= SDL_yuv_sw.c
[x86] Compile        : SDL2 <= SDL_render_d3d.c
[x86] Compile        : SDL2 <= SDL_render_d3d11.c
[x86] Compile        : SDL2 <= SDL_render_gl.c
[x86] Compile        : SDL2 <= SDL_shaders_gl.c
[x86] Compile        : SDL2 <= SDL_render_gles.c
[x86] Compile        : SDL2 <= SDL_render_gles2.c
In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:304:
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_gles2funcs.h:58:1: warning: incompatible pointer types assigning to 'void (*)(GLuint, GLsizei, const GLchar **, const GLint *)' (aka 'void (*)(unsigned int, int, const char **, const int *)') from 'void (GLuint, GLsizei, const GLchar *const *, const GLint *)' (aka 'void (unsigned int, int, const char *const *, const int *)') [-Wincompatible-pointer-types]
SDL_PROC(void, glShaderSource, (GLuint, GLsizei, const GLchar **, const GLint *))
^              ~~~~~~~~~~~~~~
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:293:45: note: expanded from macro 'SDL_PROC'
#define SDL_PROC(ret,func,params) data->func=func;
                                            ^~~~~
1 warning generated.
[x86] Compile        : SDL2 <= SDL_shaders_gles2.c
[x86] Compile        : SDL2 <= SDL_render_psp.c
[x86] Compile        : SDL2 <= SDL_blendfillrect.c
[x86] Compile        : SDL2 <= SDL_blendline.c
[x86] Compile        : SDL2 <= SDL_blendpoint.c
[x86] Compile        : SDL2 <= SDL_drawline.c
[x86] Compile        : SDL2 <= SDL_drawpoint.c
[x86] Compile        : SDL2 <= SDL_render_sw.c
[x86] Compile        : SDL2 <= SDL_rotate.c
[x86] Compile        : SDL2 <= SDL_getenv.c
[x86] Compile        : SDL2 <= SDL_iconv.c
[x86] Compile        : SDL2 <= SDL_malloc.c
[x86] Compile        : SDL2 <= SDL_qsort.c
[x86] Compile        : SDL2 <= SDL_stdlib.c
[x86] Compile        : SDL2 <= SDL_string.c
[x86] Compile        : SDL2 <= SDL_thread.c
[x86] Compile        : SDL2 <= SDL_syscond.c
[x86] Compile        : SDL2 <= SDL_sysmutex.c
[x86] Compile        : SDL2 <= SDL_syssem.c
[x86] Compile        : SDL2 <= SDL_systhread.c
[x86] Compile        : SDL2 <= SDL_systls.c
[x86] Compile        : SDL2 <= SDL_timer.c
[x86] Compile        : SDL2 <= SDL_systimer.c
[x86] Compile        : SDL2 <= SDL_RLEaccel.c
[x86] Compile        : SDL2 <= SDL_blit.c
[x86] Compile        : SDL2 <= SDL_blit_0.c
[x86] Compile        : SDL2 <= SDL_blit_1.c
[x86] Compile        : SDL2 <= SDL_blit_A.c
[x86] Compile        : SDL2 <= SDL_blit_N.c
[x86] Compile        : SDL2 <= SDL_blit_auto.c
[x86] Compile        : SDL2 <= SDL_blit_copy.c
[x86] Compile        : SDL2 <= SDL_blit_slow.c
[x86] Compile        : SDL2 <= SDL_bmp.c
[x86] Compile        : SDL2 <= SDL_clipboard.c
[x86] Compile        : SDL2 <= SDL_egl.c
[x86] Compile        : SDL2 <= SDL_fillrect.c
[x86] Compile        : SDL2 <= SDL_pixels.c
[x86] Compile        : SDL2 <= SDL_rect.c
[x86] Compile        : SDL2 <= SDL_shape.c
[x86] Compile        : SDL2 <= SDL_stretch.c
[x86] Compile        : SDL2 <= SDL_surface.c
[x86] Compile        : SDL2 <= SDL_video.c
[x86] Compile        : SDL2 <= SDL_vulkan_utils.c
[x86] Compile        : SDL2 <= SDL_androidclipboard.c
[x86] Compile        : SDL2 <= SDL_androidevents.c
[x86] Compile        : SDL2 <= SDL_androidgl.c
[x86] Compile        : SDL2 <= SDL_androidkeyboard.c
[x86] Compile        : SDL2 <= SDL_androidmessagebox.c
[x86] Compile        : SDL2 <= SDL_androidmouse.c
[x86] Compile        : SDL2 <= SDL_androidtouch.c
[x86] Compile        : SDL2 <= SDL_androidvideo.c
[x86] Compile        : SDL2 <= SDL_androidvulkan.c
[x86] Compile        : SDL2 <= SDL_androidwindow.c
[x86] Compile        : SDL2 <= SDL_test_assert.c
[x86] Compile        : SDL2 <= SDL_test_common.c
[x86] Compile        : SDL2 <= SDL_test_compare.c
[x86] Compile        : SDL2 <= SDL_test_crc32.c
[x86] Compile        : SDL2 <= SDL_test_font.c
[x86] Compile        : SDL2 <= SDL_test_fuzzer.c
[x86] Compile        : SDL2 <= SDL_test_harness.c
[x86] Compile        : SDL2 <= SDL_test_imageBlit.c
[x86] Compile        : SDL2 <= SDL_test_imageBlitBlend.c
[x86] Compile        : SDL2 <= SDL_test_imageFace.c
[x86] Compile        : SDL2 <= SDL_test_imagePrimitives.c
[x86] Compile        : SDL2 <= SDL_test_imagePrimitivesBlend.c
[x86] Compile        : SDL2 <= SDL_test_log.c
[x86] Compile        : SDL2 <= SDL_test_md5.c
[x86] Compile        : SDL2 <= SDL_test_memory.c
[x86] Compile        : SDL2 <= SDL_test_random.c
[x86] SharedLibrary  : libSDL2.so
[x86] Compile        : SDL2_gpu <= SDL_gpu.c
[x86] Compile        : SDL2_gpu <= SDL_gpu_matrix.c
[x86] Compile        : SDL2_gpu <= SDL_gpu_renderer.c
[x86] Compile        : SDL2_gpu <= SDL_gpu_shapes.c
[x86] Compile        : SDL2_gpu <= renderer_GLES_1.c
In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:474:33: error: use of undeclared identifier 'glBindFramebufferOES'; did you mean 'glBindFramebufferNOOP'?
        glBindFramebufferPROC = glBindFramebufferOES;
                                ^~~~~~~~~~~~~~~~~~~~
                                glBindFramebufferNOOP
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:374:28: note: 'glBindFramebufferNOOP' declared here
    static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                           ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:475:40: error: use of undeclared identifier 'glCheckFramebufferStatusOES'; did you mean 'glCheckFramebufferStatusNOOP'?
        glCheckFramebufferStatusPROC = glCheckFramebufferStatusOES;
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
                                       glCheckFramebufferStatusNOOP
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:378:30: note: 'glCheckFramebufferStatusNOOP' declared here
    static GLenum GLAPIENTRY glCheckFramebufferStatusNOOP(GLenum target)
                             ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:476:36: error: use of undeclared identifier 'glDeleteFramebuffersOES'; did you mean 'glDeleteFramebuffersNOOP'?
        glDeleteFramebuffersPROC = glDeleteFramebuffersOES;
                                   ^~~~~~~~~~~~~~~~~~~~~~~
                                   glDeleteFramebuffersNOOP
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:383:28: note: 'glDeleteFramebuffersNOOP' declared here
    static void GLAPIENTRY glDeleteFramebuffersNOOP(GLsizei n, const GLuint* framebuffers)
                           ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:477:38: error: use of undeclared identifier 'glFramebufferTexture2DOES'; did you mean 'glFramebufferTexture2DNOOP'?
        glFramebufferTexture2DPROC = glFramebufferTexture2DOES;
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
                                     glFramebufferTexture2DNOOP
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:387:28: note: 'glFramebufferTexture2DNOOP' declared here
    static void GLAPIENTRY glFramebufferTexture2DNOOP(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
                           ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:478:33: error: use of undeclared identifier 'glGenFramebuffersOES'; did you mean 'glGenFramebuffersNOOP'?
        glGenFramebuffersPROC = glGenFramebuffersOES;
                                ^~~~~~~~~~~~~~~~~~~~
                                glGenFramebuffersNOOP
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:391:28: note: 'glGenFramebuffersNOOP' declared here
    static void GLAPIENTRY glGenFramebuffersNOOP(GLsizei n, GLuint *ids)
                           ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:479:32: error: use of undeclared identifier 'glGenerateMipmapOES'; did you mean 'glGenerateMipmapNOOP'?
        glGenerateMipmapPROC = glGenerateMipmapOES;
                               ^~~~~~~~~~~~~~~~~~~
                               glGenerateMipmapNOOP
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:28: note: 'glGenerateMipmapNOOP' declared here
    static void GLAPIENTRY glGenerateMipmapNOOP(GLenum target)
                           ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:883:9: warning: implicit declaration of function 'glBlendFuncSeparateOES' is invalid in C99 [-Wimplicit-function-declaration]
        glBlendFuncSeparate(mode.source_color, mode.dest_color, mode.source_alpha, mode.dest_alpha);
        ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//include/SDL_gpu_GLES_1.h:41:33:
 note: expanded from macro 'glBlendFuncSeparate'
    #define glBlendFuncSeparate glBlendFuncSeparateOES
                                ^
In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:893:13: warning: implicit declaration of function 'glBlendEquationOES' is invalid in C99 [-Wimplicit-function-declaration]
            glBlendEquation(mode.color_equation);
            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//include/SDL_gpu_GLES_1.h:39:29: note: expanded from macro 'glBlendEquation'
    #define glBlendEquation glBlendEquationOES
                            ^
In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:895:13: warning: implicit declaration of function 'glBlendEquationSeparateOES' is invalid in C99 [-Wimplicit-function-declaration]
            glBlendEquationSeparate(mode.color_equation, mode.alpha_equation);
            ^
/Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//include/SDL_gpu_GLES_1.h:40:37: note: expanded from macro 'glBlendEquationSeparate'
    #define glBlendEquationSeparate glBlendEquationSeparateOES
                                    ^
3 warnings and 6 errors generated.
make: *** [/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/objs-debug/SDL2_gpu/.//src/renderer_GLES_1.o] Error 1
:app:externalNativeBuildDebug FAILED
:app:buildInfoGeneratorDebug

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:externalNativeBuildDebug'.
> Build command failed.
  Error while executing process /Users/Diego/Library/Android/sdk/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/Users/Diego/Downloads/SDL/android-project/app/jni/Android.mk NDK_APPLICATION_MK=/Users/Diego/Downloads/SDL/android-project/app/jni/Application.mk APP_ABI=x86 NDK_ALL_ABIS=x86 NDK_DEBUG=1 APP_PLATFORM=android-14 NDK_OUT=/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/lib APP_PLATFORM=android-14 /Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/libmain.so}
  [x86] Compile++      : main <= main.cpp
  [x86] Compile        : SDL2 <= SDL.c
  [x86] Compile        : SDL2 <= SDL_assert.c
  [x86] Compile        : SDL2 <= SDL_dataqueue.c
  [x86] Compile        : SDL2 <= SDL_error.c
  [x86] Compile        : SDL2 <= SDL_hints.c
  [x86] Compile        : SDL2 <= SDL_log.c
  [x86] Compile        : SDL2 <= SDL_audio.c
  [x86] Compile        : SDL2 <= SDL_audiocvt.c
  [x86] Compile        : SDL2 <= SDL_audiodev.c
  [x86] Compile        : SDL2 <= SDL_audiotypecvt.c
  [x86] Compile        : SDL2 <= SDL_mixer.c
  [x86] Compile        : SDL2 <= SDL_wave.c
  [x86] Compile        : SDL2 <= SDL_androidaudio.c
  [x86] Compile        : SDL2 <= SDL_dummyaudio.c
  [x86] Compile        : SDL2 <= SDL_atomic.c
  [x86] Compile        : SDL2 <= SDL_spinlock.c
  [x86] Compile        : SDL2 <= SDL_android.c
  [x86] Compile        : SDL2 <= SDL_cpuinfo.c
  [x86] Compile        : SDL2 <= SDL_dynapi.c
  [x86] Compile        : SDL2 <= SDL_clipboardevents.c
  [x86] Compile        : SDL2 <= SDL_dropevents.c
  [x86] Compile        : SDL2 <= SDL_events.c
  [x86] Compile        : SDL2 <= SDL_gesture.c
  [x86] Compile        : SDL2 <= SDL_keyboard.c
  [x86] Compile        : SDL2 <= SDL_mouse.c
  [x86] Compile        : SDL2 <= SDL_quit.c
  [x86] Compile        : SDL2 <= SDL_touch.c
  [x86] Compile        : SDL2 <= SDL_windowevents.c
  [x86] Compile        : SDL2 <= SDL_rwops.c
  [x86] Compile        : SDL2 <= SDL_haptic.c
  [x86] Compile        : SDL2 <= SDL_syshaptic.c
  [x86] Compile        : SDL2 <= SDL_gamecontroller.c
  [x86] Compile        : SDL2 <= SDL_joystick.c
  [x86] Compile        : SDL2 <= SDL_sysjoystick.c
  [x86] Compile        : SDL2 <= SDL_steamcontroller.c
  [x86] Compile        : SDL2 <= SDL_sysloadso.c
  [x86] Compile        : SDL2 <= SDL_power.c
  [x86] Compile        : SDL2 <= SDL_syspower.c
  [x86] Compile        : SDL2 <= SDL_sysfilesystem.c
  [x86] Compile        : SDL2 <= SDL_d3dmath.c
  [x86] Compile        : SDL2 <= SDL_render.c
  [x86] Compile        : SDL2 <= SDL_yuv_mmx.c
  [x86] Compile        : SDL2 <= SDL_yuv_sw.c
  [x86] Compile        : SDL2 <= SDL_render_d3d.c
  [x86] Compile        : SDL2 <= SDL_render_d3d11.c
  [x86] Compile        : SDL2 <= SDL_render_gl.c
  [x86] Compile        : SDL2 <= SDL_shaders_gl.c
  [x86] Compile        : SDL2 <= SDL_render_gles.c
  [x86] Compile        : SDL2 <= SDL_render_gles2.c
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:304:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_gles2funcs.h:58:1: warning: incompatible pointer types assigning to 'void (*)(GLuint, GLsizei, const GLchar **, const GLint *)' (aka 'void (*)(unsigned int, int, const char **, const int *)') from 'void (GLuint, GLsizei, const GLchar *const *, const GLint *)' (aka 'void (unsigned int, int, const char *const *, const int *)') [-Wincompatible-pointer-types]
  SDL_PROC(void, glShaderSource, (GLuint, GLsizei, const GLchar **, const GLint *))
  ^              ~~~~~~~~~~~~~~
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL/src/render/opengles2/SDL_render_gles2.c:293:45: note: expanded from macro 'SDL_PROC'
  #define SDL_PROC(ret,func,params) data->func=func;
                                              ^~~~~
  1 warning generated.
  [x86] Compile        : SDL2 <= SDL_shaders_gles2.c
  [x86] Compile        : SDL2 <= SDL_render_psp.c
  [x86] Compile        : SDL2 <= SDL_blendfillrect.c
  [x86] Compile        : SDL2 <= SDL_blendline.c
  [x86] Compile        : SDL2 <= SDL_blendpoint.c
  [x86] Compile        : SDL2 <= SDL_drawline.c
  [x86] Compile        : SDL2 <= SDL_drawpoint.c
  [x86] Compile        : SDL2 <= SDL_render_sw.c
  [x86] Compile        : SDL2 <= SDL_rotate.c
  [x86] Compile        : SDL2 <= SDL_getenv.c
  [x86] Compile        : SDL2 <= SDL_iconv.c
  [x86] Compile        : SDL2 <= SDL_malloc.c
  [x86] Compile        : SDL2 <= SDL_qsort.c
  [x86] Compile        : SDL2 <= SDL_stdlib.c
  [x86] Compile        : SDL2 <= SDL_string.c
  [x86] Compile        : SDL2 <= SDL_thread.c
  [x86] Compile        : SDL2 <= SDL_syscond.c
  [x86] Compile        : SDL2 <= SDL_sysmutex.c
  [x86] Compile        : SDL2 <= SDL_syssem.c
  [x86] Compile        : SDL2 <= SDL_systhread.c
  [x86] Compile        : SDL2 <= SDL_systls.c
  [x86] Compile        : SDL2 <= SDL_timer.c
  [x86] Compile        : SDL2 <= SDL_systimer.c
  [x86] Compile        : SDL2 <= SDL_RLEaccel.c
  [x86] Compile        : SDL2 <= SDL_blit.c
  [x86] Compile        : SDL2 <= SDL_blit_0.c
  [x86] Compile        : SDL2 <= SDL_blit_1.c
  [x86] Compile        : SDL2 <= SDL_blit_A.c
  [x86] Compile        : SDL2 <= SDL_blit_N.c
  [x86] Compile        : SDL2 <= SDL_blit_auto.c
  [x86] Compile        : SDL2 <= SDL_blit_copy.c
  [x86] Compile        : SDL2 <= SDL_blit_slow.c
  [x86] Compile        : SDL2 <= SDL_bmp.c
  [x86] Compile        : SDL2 <= SDL_clipboard.c
  [x86] Compile        : SDL2 <= SDL_egl.c
  [x86] Compile        : SDL2 <= SDL_fillrect.c
  [x86] Compile        : SDL2 <= SDL_pixels.c
  [x86] Compile        : SDL2 <= SDL_rect.c
  [x86] Compile        : SDL2 <= SDL_shape.c
  [x86] Compile        : SDL2 <= SDL_stretch.c
  [x86] Compile        : SDL2 <= SDL_surface.c
  [x86] Compile        : SDL2 <= SDL_video.c
  [x86] Compile        : SDL2 <= SDL_vulkan_utils.c
  [x86] Compile        : SDL2 <= SDL_androidclipboard.c
  [x86] Compile        : SDL2 <= SDL_androidevents.c
  [x86] Compile        : SDL2 <= SDL_androidgl.c
  [x86] Compile        : SDL2 <= SDL_androidkeyboard.c
  [x86] Compile        : SDL2 <= SDL_androidmessagebox.c
  [x86] Compile        : SDL2 <= SDL_androidmouse.c
  [x86] Compile        : SDL2 <= SDL_androidtouch.c
  [x86] Compile        : SDL2 <= SDL_androidvideo.c
  [x86] Compile        : SDL2 <= SDL_androidvulkan.c
  [x86] Compile        : SDL2 <= SDL_androidwindow.c
  [x86] Compile        : SDL2 <= SDL_test_assert.c
  [x86] Compile        : SDL2 <= SDL_test_common.c
  [x86] Compile        : SDL2 <= SDL_test_compare.c
  [x86] Compile        : SDL2 <= SDL_test_crc32.c
  [x86] Compile        : SDL2 <= SDL_test_font.c
  [x86] Compile        : SDL2 <= SDL_test_fuzzer.c
  [x86] Compile        : SDL2 <= SDL_test_harness.c
  [x86] Compile        : SDL2 <= SDL_test_imageBlit.c
  [x86] Compile        : SDL2 <= SDL_test_imageBlitBlend.c
  [x86] Compile        : SDL2 <= SDL_test_imageFace.c
  [x86] Compile        : SDL2 <= SDL_test_imagePrimitives.c
  [x86] Compile        : SDL2 <= SDL_test_imagePrimitivesBlend.c
  [x86] Compile        : SDL2 <= SDL_test_log.c
  [x86] Compile        : SDL2 <= SDL_test_md5.c
  [x86] Compile        : SDL2 <= SDL_test_memory.c
  [x86] Compile        : SDL2 <= SDL_test_random.c
  [x86] SharedLibrary  : libSDL2.so
  [x86] Compile        : SDL2_gpu <= SDL_gpu.c
  [x86] Compile        : SDL2_gpu <= SDL_gpu_matrix.c
  [x86] Compile        : SDL2_gpu <= SDL_gpu_renderer.c
  [x86] Compile        : SDL2_gpu <= SDL_gpu_shapes.c
  [x86] Compile        : SDL2_gpu <= renderer_GLES_1.c
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:474:33: error: use of undeclared identifier 'glBindFramebufferOES'; did you mean 'glBindFramebufferNOOP'?
          glBindFramebufferPROC = glBindFramebufferOES;
                                  ^~~~~~~~~~~~~~~~~~~~
                                  glBindFramebufferNOOP
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:374:28: note: 'glBindFramebufferNOOP' declared here
      static void GLAPIENTRY glBindFramebufferNOOP(GLenum target, GLuint framebuffer)
                             ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:475:40: error: use of undeclared identifier 'glCheckFramebufferStatusOES'; did you mean 'glCheckFramebufferStatusNOOP'?
          glCheckFramebufferStatusPROC = glCheckFramebufferStatusOES;
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
                                         glCheckFramebufferStatusNOOP
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:378:30: note: 'glCheckFramebufferStatusNOOP' declared here
      static GLenum GLAPIENTRY glCheckFramebufferStatusNOOP(GLenum target)
                               ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:476:36: error: use of undeclared identifier 'glDeleteFramebuffersOES'; did you mean 'glDeleteFramebuffersNOOP'?
          glDeleteFramebuffersPROC = glDeleteFramebuffersOES;
                                     ^~~~~~~~~~~~~~~~~~~~~~~
                                     glDeleteFramebuffersNOOP
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:383:28: note: 'glDeleteFramebuffersNOOP' declared here
      static void GLAPIENTRY glDeleteFramebuffersNOOP(GLsizei n, const GLuint* framebuffers)
                             ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:477:38: error: use of undeclared identifier 'glFramebufferTexture2DOES'; did you mean 'glFramebufferTexture2DNOOP'?
          glFramebufferTexture2DPROC = glFramebufferTexture2DOES;
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~
                                       glFramebufferTexture2DNOOP
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:387:28: note: 'glFramebufferTexture2DNOOP' declared here
      static void GLAPIENTRY glFramebufferTexture2DNOOP(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
                             ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:478:33: error: use of undeclared identifier 'glGenFramebuffersOES'; did you mean 'glGenFramebuffersNOOP'?
          glGenFramebuffersPROC = glGenFramebuffersOES;
                                  ^~~~~~~~~~~~~~~~~~~~
                                  glGenFramebuffersNOOP
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:391:28: note: 'glGenFramebuffersNOOP' declared here
      static void GLAPIENTRY glGenFramebuffersNOOP(GLsizei n, GLuint *ids)
                             ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:479:32: error: use of undeclared identifier 'glGenerateMipmapOES'; did you mean 'glGenerateMipmapNOOP'?
          glGenerateMipmapPROC = glGenerateMipmapOES;
                                 ^~~~~~~~~~~~~~~~~~~
                                 glGenerateMipmapNOOP
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:395:28: note: 'glGenerateMipmapNOOP' declared here
      static void GLAPIENTRY glGenerateMipmapNOOP(GLenum target)
                             ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:883:9: warning: implicit declaration of function 'glBlendFuncSeparateOES' is invalid in C99 [-Wimplicit-function-declaration]
          glBlendFuncSeparate(mode.source_color, mode.dest_color, mode.source_alpha, mode.dest_alpha);
          ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//include/SDL_gpu_GLES_1.h:41:33: note: expanded from macro 'glBlendFuncSeparate'
      #define glBlendFuncSeparate glBlendFuncSeparateOES
                                  ^
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:893:13: warning: implicit declaration of function 'glBlendEquationOES' is invalid in C99 [-Wimplicit-function-declaration]
              glBlendEquation(mode.color_equation);
              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//include/SDL_gpu_GLES_1.h:39:29: note: expanded from macro 'glBlendEquation'
      #define glBlendEquation glBlendEquationOES
                              ^
  In file included from /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GLES_1.c:25:
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//src/renderer_GL_common.inl:895:13: warning: implicit declaration of function 'glBlendEquationSeparateOES' is invalid in C99 [-Wimplicit-function-declaration]
              glBlendEquationSeparate(mode.color_equation, mode.alpha_equation);
              ^
  /Users/Diego/Downloads/SDL/android-project/app/jni/SDL_gpu/.//include/SDL_gpu_GLES_1.h:40:37: note: expanded from macro 'glBlendEquationSeparate'
      #define glBlendEquationSeparate glBlendEquationSeparateOES
                                      ^
  3 warnings and 6 errors generated.
  make: *** [/Users/Diego/Downloads/SDL/android-project/app/build/intermediates/ndkBuild/debug/obj/local/x86/objs-debug/SDL2_gpu/.//src/renderer_GLES_1.o] Error 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 19s

26 actionable tasks: 14 executed, 12 up-to-date
grimfang4 commented 6 years ago

I haven't switched over to Android Studio yet, so I can't fully comment on what's going on. It may be a mismatch of expectations of GLES version or just something missing.

isubasinghe commented 6 years ago

@grimfang4 Could you please let me know of the details (sdk version, tools platform, even OS) of the system you used to compile for android. I want to try and duplicate your system so that I can get my android game to compile. Another question if have multiple GPU's can I select the one to render on to. Last question will it be possible to use nuklear with this projec, in other words can I get the GLFWwindow pointer I assume sdl-gpu uses under the hood.

Thank you so much for your time, I really like this library

grimfang4 commented 6 years ago

Whatever IDE you end up with, you're probably passing SDL_gpu through ndk-build to compile the native code and the included Android.mk file should help with that.

As I said, my build setup for Android is pretty outdated. I'm on Windows 10 x64 using Eclipse Luna (4.4.2) and SDK version 27 and platform tools version 25.0.3. API levels 10+ (Android 2.3.3+) should all work.

If you have multiple GPUs, the selection of them is vendor-specific. There's some code out there to attempt a selection of the high-performance GPU, but it cannot be done at runtime, AFAIK.

It is definitely possible to use Nuklear. Eric Wing had some progress there some time ago and needed some changes in SDL_gpu to suit it, but I don't recall if that got completely resolved. Open a separate issue for that and we can talk details.

grimfang4 commented 6 years ago

@DiegoAce, it looks like you don't have the proper declarations for the OES extensions. That's weird! Even if the hardware driver doesn't support them, the latest headers are supposed to have them. Someone ran into this happening on the Raspberry Pi 2 (see note in SDL_gpu_GLES_1.h). A similar workaround might be necessary unless you want to disable OpenGL ES 1.1 entirely. Let me know if we should spend some time on this.

DiegoAce commented 6 years ago

@grimfang4 I probably won't work on Android again for a while, but when I do I'll try enabling that workaround and let you know how it goes.

isubasinghe commented 6 years ago

@grimfang4 Thanks for the details, its alright i think I will leave nuklear alone for now.