[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1066577: nanovg: FTBFS: ../src/nanovg_gl.h:341:17: error: implicit declaration of function ‘glBlendFuncSeparate’; did you mean ‘glnvg__blendFuncSeparate’? [-Werror=implicit-function-declaration]



Source: nanovg
Version: 0.0~git20230826.f93799c+dfsg-1
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas@debian.org
Usertags: ftbfs-20240313 ftbfs-trixie ftbfs-impfuncdef

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

This is most likely caused by a change in dpkg 1.22.6, that enabled
-Werror=implicit-function-declaration. For more information, see
https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration

Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>/build'
> ==== Building nanovg (debug) ====
> Creating obj/Debug/nanovg
> nanovg.c
> Linking nanovg
> ==== Building example_gl2 (debug) ====
> ==== Building example_gl3 (debug) ====
> ==== Building example_gl2_msaa (debug) ====
> ==== Building example_gl3_msaa (debug) ====
> ==== Building example_fbo (debug) ====
> ==== Building example_gles2 (debug) ====
> ==== Building example_gles3 (debug) ====
> Creating obj/Debug/example_gl2
> Creating obj/Debug/example_gl3
> example_gl2.c
> Creating obj/Debug/example_gl2_msaa
> Creating obj/Debug/example_gl3_msaa
> example_gl3.c
> Creating obj/Debug/example_gles3
> Creating obj/Debug/example_fbo
> Creating obj/Debug/example_gles2
> demo.c
> example_gl2.c
> example_gl3.c
> example_gles3.c
> example_gles2.c
> example_fbo.c
> In file included from ../example/example_fbo.c:29:
> ../src/nanovg_gl.h: In function ‘glnvg__blendFuncSeparate’:
> ../src/nanovg_gl.h:341:17: error: implicit declaration of function ‘glBlendFuncSeparate’; did you mean ‘glnvg__blendFuncSeparate’? [-Werror=implicit-function-declaration]
>   341 |                 glBlendFuncSeparate(blend->srcRGB, blend->dstRGB, blend->srcAlpha,blend->dstAlpha);
>       |                 ^~~~~~~~~~~~~~~~~~~
>       |                 glnvg__blendFuncSeparate
> ../src/nanovg_gl.h: In function ‘glnvg__dumpShaderError’:
> ../src/nanovg_gl.h:404:9: error: implicit declaration of function ‘glGetShaderInfoLog’ [-Werror=implicit-function-declaration]
>   404 |         glGetShaderInfoLog(shader, 512, &len, str);
>       |         ^~~~~~~~~~~~~~~~~~
> ../example/demo.c: In function ‘drawParagraph’:
> ../example/demo.c:874:21: warning: unused variable ‘boxText’ [-Wunused-variable]
>   874 |         const char* boxText = "Testing\nsome multiline\ntext.";
>       |                     ^~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__dumpProgramError’:
> ../src/nanovg_gl.h:414:9: error: implicit declaration of function ‘glGetProgramInfoLog’ [-Werror=implicit-function-declaration]
>   414 |         glGetProgramInfoLog(prog, 512, &len, str);
>       |         ^~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__createShader’:
> ../src/nanovg_gl.h:441:16: error: implicit declaration of function ‘glCreateProgram’ [-Werror=implicit-function-declaration]
>   441 |         prog = glCreateProgram();
>       |                ^~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:442:16: error: implicit declaration of function ‘glCreateShader’; did you mean ‘glnvg__createShader’? [-Werror=implicit-function-declaration]
>   442 |         vert = glCreateShader(GL_VERTEX_SHADER);
>       |                ^~~~~~~~~~~~~~
>       |                glnvg__createShader
> ../src/nanovg_gl.h:445:9: error: implicit declaration of function ‘glShaderSource’ [-Werror=implicit-function-declaration]
>   445 |         glShaderSource(vert, 3, str, 0);
>       |         ^~~~~~~~~~~~~~
> ../src/nanovg_gl.h:449:9: error: implicit declaration of function ‘glCompileShader’ [-Werror=implicit-function-declaration]
>   449 |         glCompileShader(vert);
>       |         ^~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:450:9: error: implicit declaration of function ‘glGetShaderiv’; did you mean ‘glGetMapiv’? [-Werror=implicit-function-declaration]
>   450 |         glGetShaderiv(vert, GL_COMPILE_STATUS, &status);
>       |         ^~~~~~~~~~~~~
>       |         glGetMapiv
> ../src/nanovg_gl.h:463:9: error: implicit declaration of function ‘glAttachShader’ [-Werror=implicit-function-declaration]
>   463 |         glAttachShader(prog, vert);
>       |         ^~~~~~~~~~~~~~
> ../src/nanovg_gl.h:466:9: error: implicit declaration of function ‘glBindAttribLocation’ [-Werror=implicit-function-declaration]
>   466 |         glBindAttribLocation(prog, 0, "vertex");
>       |         ^~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:469:9: error: implicit declaration of function ‘glLinkProgram’; did you mean ‘glHistogram’? [-Werror=implicit-function-declaration]
>   469 |         glLinkProgram(prog);
>       |         ^~~~~~~~~~~~~
>       |         glHistogram
> ../src/nanovg_gl.h:470:9: error: implicit declaration of function ‘glGetProgramiv’ [-Werror=implicit-function-declaration]
>   470 |         glGetProgramiv(prog, GL_LINK_STATUS, &status);
>       |         ^~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__deleteShader’:
> ../src/nanovg_gl.h:486:17: error: implicit declaration of function ‘glDeleteProgram’ [-Werror=implicit-function-declaration]
>   486 |                 glDeleteProgram(shader->prog);
>       |                 ^~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:488:17: error: implicit declaration of function ‘glDeleteShader’; did you mean ‘glnvg__deleteShader’? [-Werror=implicit-function-declaration]
>   488 |                 glDeleteShader(shader->vert);
>       |                 ^~~~~~~~~~~~~~
>       |                 glnvg__deleteShader
> ../src/nanovg_gl.h: In function ‘glnvg__getUniforms’:
> ../src/nanovg_gl.h:495:43: error: implicit declaration of function ‘glGetUniformLocation’ [-Werror=implicit-function-declaration]
>   495 |         shader->loc[GLNVG_LOC_VIEWSIZE] = glGetUniformLocation(shader->prog, "viewSize");
>       |                                           ^~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:499:39: error: implicit declaration of function ‘glGetUniformBlockIndex’ [-Werror=implicit-function-declaration]
>   499 |         shader->loc[GLNVG_LOC_FRAG] = glGetUniformBlockIndex(shader->prog, "frag");
>       |                                       ^~~~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__renderCreate’:
> ../src/nanovg_gl.h:695:9: error: implicit declaration of function ‘glGenVertexArrays’ [-Werror=implicit-function-declaration]
>   695 |         glGenVertexArrays(1, &gl->vertArr);
>       |         ^~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:697:9: error: implicit declaration of function ‘glGenBuffers’; did you mean ‘glReadBuffer’? [-Werror=implicit-function-declaration]
>   697 |         glGenBuffers(1, &gl->vertBuf);
>       |         ^~~~~~~~~~~~
>       |         glReadBuffer
> ../src/nanovg_gl.h:701:9: error: implicit declaration of function ‘glUniformBlockBinding’ [-Werror=implicit-function-declaration]
>   701 |         glUniformBlockBinding(gl->shader.prog, gl->shader.loc[GLNVG_LOC_FRAG], GLNVG_FRAG_BINDING);
>       |         ^~~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__renderCreateTexture’:
> ../src/nanovg_gl.h:813:17: error: implicit declaration of function ‘glGenerateMipmap’ [-Werror=implicit-function-declaration]
>   813 |                 glGenerateMipmap(GL_TEXTURE_2D);
>       |                 ^~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__setUniforms’:
> ../src/nanovg_gl.h:986:9: error: implicit declaration of function ‘glBindBufferRange’ [-Werror=implicit-function-declaration]
>   986 |         glBindBufferRange(GL_UNIFORM_BUFFER, GLNVG_FRAG_BINDING, gl->fragBuf, uniformOffset, sizeof(GLNVGfragUniforms));
>       |         ^~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__fill’:
> ../src/nanovg_gl.h:1026:9: error: implicit declaration of function ‘glStencilOpSeparate’ [-Werror=implicit-function-declaration]
>  1026 |         glStencilOpSeparate(GL_FRONT, GL_KEEP, GL_KEEP, GL_INCR_WRAP);
>       |         ^~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__renderFlush’:
> ../src/nanovg_gl.h:1187:17: error: implicit declaration of function ‘glUseProgram’ [-Werror=implicit-function-declaration]
>  1187 |                 glUseProgram(gl->shader.prog);
>       |                 ^~~~~~~~~~~~
> ../src/nanovg_gl.h:1215:17: error: implicit declaration of function ‘glBindBuffer’; did you mean ‘glReadBuffer’? [-Werror=implicit-function-declaration]
>  1215 |                 glBindBuffer(GL_UNIFORM_BUFFER, gl->fragBuf);
>       |                 ^~~~~~~~~~~~
>       |                 glReadBuffer
> ../src/nanovg_gl.h:1216:17: error: implicit declaration of function ‘glBufferData’ [-Werror=implicit-function-declaration]
>  1216 |                 glBufferData(GL_UNIFORM_BUFFER, gl->nuniforms * gl->fragSize, gl->uniforms, GL_STREAM_DRAW);
>       |                 ^~~~~~~~~~~~
> ../src/nanovg_gl.h:1221:17: error: implicit declaration of function ‘glBindVertexArray’ [-Werror=implicit-function-declaration]
>  1221 |                 glBindVertexArray(gl->vertArr);
>       |                 ^~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:1225:17: error: implicit declaration of function ‘glEnableVertexAttribArray’ [-Werror=implicit-function-declaration]
>  1225 |                 glEnableVertexAttribArray(0);
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h:1227:17: error: implicit declaration of function ‘glVertexAttribPointer’; did you mean ‘glVertexPointer’? [-Werror=implicit-function-declaration]
>  1227 |                 glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, sizeof(NVGvertex), (const GLvoid*)(size_t)0);
>       |                 ^~~~~~~~~~~~~~~~~~~~~
>       |                 glVertexPointer
> ../src/nanovg_gl.h:1231:17: error: implicit declaration of function ‘glUniform1i’ [-Werror=implicit-function-declaration]
>  1231 |                 glUniform1i(gl->shader.loc[GLNVG_LOC_TEX], 0);
>       |                 ^~~~~~~~~~~
> ../src/nanovg_gl.h:1232:17: error: implicit declaration of function ‘glUniform2fv’ [-Werror=implicit-function-declaration]
>  1232 |                 glUniform2fv(gl->shader.loc[GLNVG_LOC_VIEWSIZE], 1, gl->view);
>       |                 ^~~~~~~~~~~~
> ../src/nanovg_gl.h:1251:17: error: implicit declaration of function ‘glDisableVertexAttribArray’ [-Werror=implicit-function-declaration]
>  1251 |                 glDisableVertexAttribArray(0);
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl.h: In function ‘glnvg__renderDelete’:
> ../src/nanovg_gl.h:1540:17: error: implicit declaration of function ‘glDeleteBuffers’; did you mean ‘glSelectBuffer’? [-Werror=implicit-function-declaration]
>  1540 |                 glDeleteBuffers(1, &gl->fragBuf);
>       |                 ^~~~~~~~~~~~~~~
>       |                 glSelectBuffer
> ../src/nanovg_gl.h:1543:17: error: implicit declaration of function ‘glDeleteVertexArrays’ [-Werror=implicit-function-declaration]
>  1543 |                 glDeleteVertexArrays(1, &gl->vertArr);
>       |                 ^~~~~~~~~~~~~~~~~~~~
> In file included from ../example/example_fbo.c:30:
> ../src/nanovg_gl_utils.h: In function ‘nvgluCreateFramebuffer’:
> ../src/nanovg_gl_utils.h:81:9: error: implicit declaration of function ‘glGenFramebuffers’; did you mean ‘glfwGetFramebufferSize’? [-Werror=implicit-function-declaration]
>    81 |         glGenFramebuffers(1, &fb->fbo);
>       |         ^~~~~~~~~~~~~~~~~
>       |         glfwGetFramebufferSize
> ../src/nanovg_gl_utils.h:82:9: error: implicit declaration of function ‘glBindFramebuffer’; did you mean ‘nvgluBindFramebuffer’? [-Werror=implicit-function-declaration]
>    82 |         glBindFramebuffer(GL_FRAMEBUFFER, fb->fbo);
>       |         ^~~~~~~~~~~~~~~~~
>       |         nvgluBindFramebuffer
> ../src/nanovg_gl_utils.h:85:9: error: implicit declaration of function ‘glGenRenderbuffers’ [-Werror=implicit-function-declaration]
>    85 |         glGenRenderbuffers(1, &fb->rbo);
>       |         ^~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl_utils.h:86:9: error: implicit declaration of function ‘glBindRenderbuffer’ [-Werror=implicit-function-declaration]
>    86 |         glBindRenderbuffer(GL_RENDERBUFFER, fb->rbo);
>       |         ^~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl_utils.h:87:9: error: implicit declaration of function ‘glRenderbufferStorage’ [-Werror=implicit-function-declaration]
>    87 |         glRenderbufferStorage(GL_RENDERBUFFER, GL_STENCIL_INDEX8, w, h);
>       |         ^~~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl_utils.h:90:9: error: implicit declaration of function ‘glFramebufferTexture2D’ [-Werror=implicit-function-declaration]
>    90 |         glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, fb->texture, 0);
>       |         ^~~~~~~~~~~~~~~~~~~~~~
> demo.c
> perf.c
> demo.c
> ../src/nanovg_gl_utils.h:91:9: error: implicit declaration of function ‘glFramebufferRenderbuffer’ [-Werror=implicit-function-declaration]
>    91 |         glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, fb->rbo);
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../src/nanovg_gl_utils.h:93:13: error: implicit declaration of function ‘glCheckFramebufferStatus’ [-Werror=implicit-function-declaration]
>    93 |         if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) {
>       |             ^~~~~~~~~~~~~~~~~~~~~~~~
> demo.c
> ../src/nanovg_gl_utils.h: In function ‘nvgluDeleteFramebuffer’:
> ../src/nanovg_gl_utils.h:138:17: error: implicit declaration of function ‘glDeleteFramebuffers’; did you mean ‘nvgluDeleteFramebuffer’? [-Werror=implicit-function-declaration]
>   138 |                 glDeleteFramebuffers(1, &fb->fbo);
>       |                 ^~~~~~~~~~~~~~~~~~~~
>       |                 nvgluDeleteFramebuffer
> ../src/nanovg_gl_utils.h:140:17: error: implicit declaration of function ‘glDeleteRenderbuffers’ [-Werror=implicit-function-declaration]
>   140 |                 glDeleteRenderbuffers(1, &fb->rbo);
>       |                 ^~~~~~~~~~~~~~~~~~~~~
> demo.c
> demo.c
> ../example/perf.c: In function ‘startGPUTimer’:
> ../example/perf.c:46:9: error: implicit declaration of function ‘glBeginQuery’ [-Werror=implicit-function-declaration]
>    46 |         glBeginQuery(GL_TIME_ELAPSED, timer->queries[timer->cur % GPU_QUERY_COUNT] );
>       |         ^~~~~~~~~~~~
> ../example/perf.c: In function ‘stopGPUTimer’:
> ../example/perf.c:59:9: error: implicit declaration of function ‘glEndQuery’ [-Werror=implicit-function-declaration]
>    59 |         glEndQuery(GL_TIME_ELAPSED);
>       |         ^~~~~~~~~~
> ../example/demo.c: In function ‘drawParagraph’:
> ../example/demo.c:874:21: warning: unused variable ‘boxText’ [-Wunused-variable]
>   874 |         const char* boxText = "Testing\nsome multiline\ntext.";
>       |                     ^~~~~~~
> ../example/perf.c:62:17: error: implicit declaration of function ‘glGetQueryObjectiv’ [-Werror=implicit-function-declaration]
>    62 |                 glGetQueryObjectiv(timer->queries[timer->ret % GPU_QUERY_COUNT], GL_QUERY_RESULT_AVAILABLE, &available);
>       |                 ^~~~~~~~~~~~~~~~~~
> ../example/demo.c: In function ‘drawParagraph’:
> ../example/demo.c:874:21: warning: unused variable ‘boxText’ [-Wunused-variable]
>   874 |         const char* boxText = "Testing\nsome multiline\ntext.";
>       |                     ^~~~~~~
> cc1: some warnings being treated as errors
> make[2]: *** [example_gles3.make:226: obj/Debug/example_gles3/perf.o] Error 1


The full build log is available from:
http://qa-logs.debian.net/2024/03/13/nanovg_0.0~git20230826.f93799c+dfsg-1_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.


Reply to: