diff --git a/doc/changelog.dox b/doc/changelog.dox index bdf3ca48a..90eafbebc 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -81,6 +81,9 @@ See also: happening during EGL initialization in recent NVidia drivers. See @ref opengl-workarounds and [mosra/magnum#491](https://github.com/mosra/magnum/pull/491) for more information. +- A new @cpp "angle-chatty-shader-compiler" @ce workarounds for silencing + useless linker output on ANGLE. See @ref opengl-workarounds for more + information. @subsubsection changelog-latest-new-math Math library diff --git a/src/Magnum/GL/AbstractShaderProgram.cpp b/src/Magnum/GL/AbstractShaderProgram.cpp index 7f306e1c1..e426d43ed 100644 --- a/src/Magnum/GL/AbstractShaderProgram.cpp +++ b/src/Magnum/GL/AbstractShaderProgram.cpp @@ -544,6 +544,12 @@ void AbstractShaderProgram::cleanLogImplementationIntelWindows(std::string& mess } #endif +#if defined(MAGNUM_TARGET_GLES) && !defined(MAGNUM_TARGET_WEBGL) +void AbstractShaderProgram::cleanLogImplementationAngle(std::string& message) { + if(message == "\n") message = {}; +} +#endif + Int AbstractShaderProgram::uniformLocationInternal(const Containers::ArrayView name) { const GLint location = glGetUniformLocation(_id, name); if(location == -1) diff --git a/src/Magnum/GL/AbstractShaderProgram.h b/src/Magnum/GL/AbstractShaderProgram.h index 6006cb8cc..b62f58ec1 100644 --- a/src/Magnum/GL/AbstractShaderProgram.h +++ b/src/Magnum/GL/AbstractShaderProgram.h @@ -1351,6 +1351,9 @@ class MAGNUM_GL_EXPORT AbstractShaderProgram: public AbstractObject { #if defined(CORRADE_TARGET_WINDOWS) && !defined(MAGNUM_TARGET_GLES) static MAGNUM_GL_LOCAL void cleanLogImplementationIntelWindows(std::string& message); #endif + #if defined(MAGNUM_TARGET_GLES) && !defined(MAGNUM_TARGET_WEBGL) + static MAGNUM_GL_LOCAL void cleanLogImplementationAngle(std::string& message); + #endif void use(); diff --git a/src/Magnum/GL/Implementation/ShaderProgramState.cpp b/src/Magnum/GL/Implementation/ShaderProgramState.cpp index 943f99237..99ca2545f 100644 --- a/src/Magnum/GL/Implementation/ShaderProgramState.cpp +++ b/src/Magnum/GL/Implementation/ShaderProgramState.cpp @@ -65,6 +65,11 @@ ShaderProgramState::ShaderProgramState(Context& context, std::vector