intel/fastuidraw

GCC 8.2.0 cross-compile GLES

Closed this issue · 2 comments

I am adding the FastUIDraw project to the Yocto build system. The FastUIDraw library build completes but I think the GLES build is broken in my case. I am not seeing where the build fails yet, but it seems the NGL generated gles2 backend files did not get created with the function foo. I am submitting an other issue because I do see a typo in the NGL HeaderCreator.

make -j 1 BUILD_GL=0 BUILD_GLES=1 painter-simple-test

x86_64-oe-linux-g++ --version x86_64-oe-linux-g++ (GCC) 8.2.0 Copyright (C) 2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

x86_64-oe-linux-g++ -m64 -march=nehalem -mtune=generic -mfpmath=sse -msse4.2 --sysroot=build/tmp-glibc/work/corei7-64-oe-linux/fastuidraw/1.0.0-r0/recipe-sysroot -O3 -fstrict-aliasing -Wall -Wextra -Wcast-qual -Wwrite-strings -Iinc -Isrc/fastuidraw/internal -Isrc/fastuidraw/internal/3rd_party -DFASTUIDRAW_GL_USE_GLES -Ibuild/tmp-glibc/work/corei7-64-oe-linux/fastuidraw/1.0.0-r0/recipe-sysroot/usr/include/freetype2 -std=c++11 -fPIC -MT build/release/GLES/src/fastuidraw/gl_backend/gl_binding.o -MMD -MP -MF build/release/GLES/src/fastuidraw/gl_backend/gl_binding.d -c src/fastuidraw/gl_backend/gl_binding.cpp -o build/release/GLES/src/fastuidraw/gl_backend/gl_binding.o In file included from inc/fastuidraw/gl_backend/ngl_header.hpp:21, from src/fastuidraw/gl_backend/gl_binding.cpp:26: src/fastuidraw/gl_backend/gl_binding.cpp: In function 'std::__cxx11::string {anonymous}::gl_error_check()': inc/fastuidraw/gl_backend/ngl_gles3.hpp:17:67: error: 'get_function_ptr_glGetError' is not a member of 'fastuidraw::gl_binding' #define FASTUIDRAWglfunctionPointer(name) fastuidraw::gl_binding::get_function_ptr_##name() ^~~~~~~~~~~~~~~~~ src/fastuidraw/gl_backend/gl_binding.cpp:34:14: note: in expansion of macro 'FASTUIDRAWglfunctionPointer' auto p = FASTUIDRAWglfunctionPointer(glGetError); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ make/Makefile.gl_backend.lib.mk:117: recipe for target 'build/release/GLES/src/fastuidraw/gl_backend/gl_binding.o' failed make: *** [build/release/GLES/src/fastuidraw/gl_backend/gl_binding.o] Error 1 ERROR: oe_runmake failed WARNING: ../temp/run.do_compile:1 exit 1 from 'exit 1'

Probably the GLES headers are just missing. Would be nice if "make check" would return with an error if at least one missing dependency was detected.

If you do "make BUILD_GLES=1 check", it should check if the GLES headers are present or not and print accordingly, i.e. when using make check, pass to make the -exact- same environmentals as one passes when building.