Message ID | 20200428195844.48124-2-b.bilas@grinn-global.com |
---|---|
State | Changes Requested |
Headers | show |
Series | [1/2] package/cegui: force libglew when libepoxy is also enabled | expand |
Hello, Adding Bernd for libglew/libglu questions. On Tue, 28 Apr 2020 21:58:44 +0200 Bartosz Bilas <b.bilas@grinn-global.com> wrote: > Fixes: > include/GL/glew.h:1205:14: fatal error: GL/glu.h: No such file or directory > > Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> This should not be solved inside cegui: it's the glew.h header that includes GL/glu.h, so from the look of it, glew should depend on glu. However, it turns out that glew has a GLEW_NO_GLU flag: #ifndef GLEW_NO_GLU /* this is where we can safely include GLU */ # if defined(__APPLE__) && defined(__MACH__) # include <OpenGL/glu.h> # else # include <GL/glu.h> # endif #endif I'm not sure how we should use that GLEW_NO_GLU flag. Should it be the responsibility of the package using glew to define it? Could you do a bit of research on this? Thanks, Thomas
Hello all, On 29.04.2020 22:53, Thomas Petazzoni wrote: > Hello, > > Adding Bernd for libglew/libglu questions. > > On Tue, 28 Apr 2020 21:58:44 +0200 > Bartosz Bilas <b.bilas@grinn-global.com> wrote: > >> Fixes: >> include/GL/glew.h:1205:14: fatal error: GL/glu.h: No such file or directory >> >> Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> > This should not be solved inside cegui: it's the glew.h header that > includes GL/glu.h, so from the look of it, glew should depend on glu. Are you sure? There is a couple of packages which have similar fix such as: package/ogre/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h package/supertux/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h package/lugaru/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h > > However, it turns out that glew has a GLEW_NO_GLU flag: > > #ifndef GLEW_NO_GLU > /* this is where we can safely include GLU */ > # if defined(__APPLE__) && defined(__MACH__) > # include <OpenGL/glu.h> > # else > # include <GL/glu.h> > # endif > #endif > > I'm not sure how we should use that GLEW_NO_GLU flag. Should it be the > responsibility of the package using glew to define it? > > Could you do a bit of research on this? I will but not in the near future. > Thanks, Thomas Best Bartek
On Thu, 30 Apr 2020 21:54:15 +0200 Bartosz Bilas <b.bilas@grinn-global.com> wrote: > >> Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> > > This should not be solved inside cegui: it's the glew.h header that > > includes GL/glu.h, so from the look of it, glew should depend on glu. > > Are you sure? There is a couple of packages which have similar fix such as: > > package/ogre/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h > package/supertux/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h > package/lugaru/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h And these packages are similarly wrong I believe. And yes, I am sure, see the code below: > > However, it turns out that glew has a GLEW_NO_GLU flag: > > > > #ifndef GLEW_NO_GLU > > /* this is where we can safely include GLU */ > > # if defined(__APPLE__) && defined(__MACH__) > > # include <OpenGL/glu.h> > > # else > > # include <GL/glu.h> > > # endif > > #endif This clearly shows that glew is including <GL/glu.h>. So it should be the responsibility of glew to depend on glu, or to make it properly optional by defining GLEW_NO_GLU. Hopefully Bernd will be able to comment on this. Best regards, Thomas
Hi, Am Thu, 30 Apr 2020 21:54:15 +0200 schrieb Bartosz Bilas: > Are you sure? There is a couple of packages which have similar fix such > as: > > package/ogre/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h sent http://patchwork.ozlabs.org/project/buildroot/patch/ 20200503171227.1411086-1-bernd.kuhls@t-online.de/ which removes the libglu dependency coming from upstream-included glew.h. > package/supertux/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h dito, sent http://patchwork.ozlabs.org/project/buildroot/patch/ 20200503171227.1411086-2-bernd.kuhls@t-online.de/ > package/lugaru/Config.in: select BR2_PACKAGE_LIBGLU # GL/glu.h This package directly includes GL/glu.h: https://bitbucket.org/osslugaru/lugaru/src/ f6049187585733143f2fb2d688097cc711e15cf0/Source/gamegl.h#lines-42 and does not make use of libglew at all. Cegui also directly includes GL/glu.h: https://github.com/cegui/cegui/blob/master/cegui/include/CEGUI/ RendererModules/OpenGL/GL.h#L49 which makes libglu a hard dependency for this package even when -DGLEW_NO_GLU was added to CXXFLAGS. Regards, Bernd
Am Tue, 28 Apr 2020 21:58:44 +0200 schrieb Bartosz Bilas: > Fixes: > include/GL/glew.h:1205:14: fatal error: GL/glu.h: No such file or > directory Cegui directly includes GL/glu.h: https://github.com/cegui/cegui/blob/master/cegui/include/CEGUI/ RendererModules/OpenGL/GL.h#L49 which makes libglu a hard dependency for this package even when -DGLEW_NO_GLU was added to CXXFLAGS. Reviewed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Hi guys, On 03.05.2020 19:16, Bernd Kuhls wrote: > Am Tue, 28 Apr 2020 21:58:44 +0200 schrieb Bartosz Bilas: > >> Fixes: >> include/GL/glew.h:1205:14: fatal error: GL/glu.h: No such file or >> directory > Cegui directly includes GL/glu.h: > > https://github.com/cegui/cegui/blob/master/cegui/include/CEGUI/ > RendererModules/OpenGL/GL.h#L49 > > which makes libglu a hard dependency for this package even when > -DGLEW_NO_GLU was added to CXXFLAGS. > > Reviewed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Thomas could you give some feedback with that patch then? > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot Best Bartek
Hi Thomas, On 09.05.2020 10:28, Bartosz Bilas wrote: > Hi guys, > > On 03.05.2020 19:16, Bernd Kuhls wrote: >> Am Tue, 28 Apr 2020 21:58:44 +0200 schrieb Bartosz Bilas: >> >>> Fixes: >>> include/GL/glew.h:1205:14: fatal error: GL/glu.h: No such file or >>> directory >> Cegui directly includes GL/glu.h: >> >> https://github.com/cegui/cegui/blob/master/cegui/include/CEGUI/ >> RendererModules/OpenGL/GL.h#L49 >> >> which makes libglu a hard dependency for this package even when >> -DGLEW_NO_GLU was added to CXXFLAGS. >> >> Reviewed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> > Thomas could you give some feedback with that patch then? gently ping due to the fact that the issue is still there and causing autobuilders failure. >> >> _______________________________________________ >> buildroot mailing list >> buildroot@busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot > Best > Bartek > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot Best Bartek
diff --git a/package/cegui/Config.in b/package/cegui/Config.in index f917be0cc5..0c7932098c 100644 --- a/package/cegui/Config.in +++ b/package/cegui/Config.in @@ -9,6 +9,7 @@ config BR2_PACKAGE_CEGUI depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR select BR2_PACKAGE_GLM + select BR2_PACKAGE_LIBGLU if BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE help Crazy Eddie's GUI System is a free library providing windowing diff --git a/package/cegui/cegui.mk b/package/cegui/cegui.mk index 0e3d015948..4aaa065818 100644 --- a/package/cegui/cegui.mk +++ b/package/cegui/cegui.mk @@ -16,7 +16,8 @@ CEGUI_DEPENDENCIES = glm \ $(if $(BR2_PACKAGE_HAS_LIBGL),libgl) \ $(if $(BR2_PACKAGE_HAS_LIBGLES),libgles) \ $(if $(BR2_PACKAGE_LIBGLEW),libglew) \ - $(if $(BR2_PACKAGE_LIBICONV),libiconv) + $(if $(BR2_PACKAGE_LIBICONV),libiconv) \ + $(if $(BR2_PACKAGE_LIBGLU),libglu) ifeq ($(BR2_PACKAGE_LIBEPOXY)$(BR2_PACKAGE_LIBGLEW),y) CEGUI_DEPENDENCIES += libepoxy
Fixes: include/GL/glew.h:1205:14: fatal error: GL/glu.h: No such file or directory Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> --- package/cegui/Config.in | 1 + package/cegui/cegui.mk | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-)