<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 2 October 2015 at 18:43, Andreas Oberritter <span dir="ltr">&lt;<a href="mailto:obi@opendreambox.org" target="_blank">obi@opendreambox.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hello Jussi,</blockquote><div><br></div><div><br></div><div>Hi, and thanks for the help.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On 02.10.2015 14:41, Jussi Kukkonen wrote:<br>
&gt; Automatic dependency tracking does not notice this (understandable<br>
&gt; with the dlopen trickery epoxy does).<br>
&gt;<br>
&gt; [YOCTO #8371]<br>
&gt;<br>
&gt; Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
&gt; ---<br>
&gt;<br>
&gt;<br>
&gt; I&#39;m not super familiar with the opengl handling so please let me know if there&#39;s some<br>
&gt; better way to do this: The problem being fixed is e.g. gtk3-demo failing to start<br>
&gt; because it fails to dlopen libGL.so.1.<br>
&gt;<br>
&gt;<br>
&gt;  meta/recipes-graphics/libepoxy/<a href="http://libepoxy_git.bb" rel="noreferrer" target="_blank">libepoxy_git.bb</a> | 1 +<br>
&gt;  1 file changed, 1 insertion(+)<br>
&gt;<br>
&gt; diff --git a/meta/recipes-graphics/libepoxy/<a href="http://libepoxy_git.bb" rel="noreferrer" target="_blank">libepoxy_git.bb</a> b/meta/recipes-graphics/libepoxy/<a href="http://libepoxy_git.bb" rel="noreferrer" target="_blank">libepoxy_git.bb</a><br>
&gt; index ad17293..fe05d4e 100644<br>
&gt; --- a/meta/recipes-graphics/libepoxy/<a href="http://libepoxy_git.bb" rel="noreferrer" target="_blank">libepoxy_git.bb</a><br>
&gt; +++ b/meta/recipes-graphics/libepoxy/<a href="http://libepoxy_git.bb" rel="noreferrer" target="_blank">libepoxy_git.bb</a><br>
&gt; @@ -20,6 +20,7 @@ S = &quot;${WORKDIR}/git&quot;<br>
&gt;  inherit autotools pkgconfig<br>
&gt;<br>
&gt;  DEPENDS = &quot;util-macros virtual/egl&quot;<br>
&gt; +RDEPENDS_${PN} = &quot;libgl&quot;<br>
&gt;<br>
&gt;  PACKAGECONFIG[x11] = &quot;--enable-glx, --disable-glx, virtual/libx11&quot;<br>
<br>
</span>If epoxy behaves like other projects, then I&#39;d try removing virtual/egl from<br>
DEPENDS and replacing the line above with this one</blockquote><div><br></div><div><div>Hi, and thanks for the help.</div><div><br></div></div><div>For reference, epoxy is slightly different from most projects in that it provides GL API(s) itself. It&#39;s a helper library to avoid doing the dlopen/*GetProcAddress dance: epoxy handles that and the application can just call the functions without dealing with function pointers.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"> <br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
PACKAGECONFIG[x11] = &quot;--enable-glx, --disable-glx, virtual/libx11 virtual/gl, libgl&quot;<br>
<br>
An additional packageconfig for gles2 should be added. For a rather complex<br>
example covering many environments see meta/recipes-graphics/cogl/cogl-1.0.inc</blockquote><div><br></div><div><div>The cogl example looks good to me -- although currently epoxy does depend on egl at build time unconditionally: at least some dispatch headers are built based on egl headers.<br></div></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">
&gt;  PACKAGECONFIG ??= &quot;${@bb.utils.contains(&#39;DISTRO_FEATURES&#39;, &#39;x11&#39;, &#39;x11&#39;, &#39;&#39;, d)}&quot;<br>
<br>
</span>An empty default probably doesn&#39;t make sense for this library, unless --disable-glx<br>
implies --enable-egl (or something similar). But then you&#39;d need to keep the build<br>
dependency on virtual/egl, even though it&#39;s most probably unused if x11 is available.</blockquote><div><br></div><div>The EGL support is there in epoxy regardless of --enable-glx, as far as I can see so I think I&#39;ll have to keep it there. But I&#39;ll modify the runtime dependencies based on the cogl example.</div><div> <br></div><div>Thanks, Jussi</div></div></div></div>