On 03/23/16 12:33 PM, Till Wegmüller wrote:
Hi

While Packaging mate-screensaver i stumbled upon a funny error message

pkgdepend says:

 
>/root/workspace/oi-userland/components/mate/mate-screensaver/build/manifest-i386-mate-screensaver.depend
 has unresolved dependency '
 >    depend type=require fmri=__TBD pkg.debug.depend.file=libGL.so.1 \
 > pkg.debug.depend.reason=usr/libexec/mate-screensaver-gl-helper \
 >        pkg.debug.depend.type=elf \
 >        pkg.debug.depend.path=lib \
 >        pkg.debug.depend.path=usr/lib'.

So as far as i understand it it cannot find libGL.so.1
Funny is that, this file exists in /usr/lib

It's not saying that it can't find the file, but rather that it cannot find a
package containing /lib/libGL.so.1 or /usr/lib/libGL.so.1 (as either a link or
a file).

Side note usr/lib/libGL is linked to usr/lib/GL/libGL which is linked to
var/run/opengl/lib/libGL which finaly links to usr/lib/mesa/libGL.
Why do those links not directly link to usr/lib/mesa/libGL?

Because the ogl-select runtime service sets the links to the nvidia or mesa
version as needed for the system.   This is also why they're not packaged -
the package can't set the link differently based on the hardware installed
on the system.

This is why xscreensaver has a workaround for this in its manifest:

# pkgdepend can't follow the runtime generated symlinks to libGL
set name=pkg.depend.bypass-generate value=libGL\.so\.1

[... all the files in the package ...]

# Second half of workaround for pkgdepend not handling libGL's magic properly
depend type=require fmri=__TBD pkg.debug.depend.file=usr/lib/mesa/libGL.so.1

https://hg.java.net/hg/solaris-userland~gate/file/0416d82f7f55/components/desktop/xscreensaver/xscreensaver-hacks-gl.p5m

--
        -Alan Coopersmith-              alan.coopersm...@oracle.com
         Oracle Solaris Engineering - http://blogs.oracle.com/alanc

_______________________________________________
oi-dev mailing list
oi-dev@openindiana.org
http://openindiana.org/mailman/listinfo/oi-dev

Reply via email to