Bug 91385 - gallium xvmc tries to symlink non existing libraries on OpenBSD
Summary: gallium xvmc tries to symlink non existing libraries on OpenBSD
Status: NEW
Alias: None
Product: Mesa
Classification: Unclassified
Component: Other (show other bugs)
Version: git
Hardware: Other OpenBSD
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-18 16:00 UTC by Jonathan Gray
Modified: 2015-07-18 16:00 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jonathan Gray 2015-07-18 16:00:30 UTC
The gallium xvmc Makefile assumes the system uses Linux style library names with
libfoo.so.major.minor.revision with symlinks to libfoo.so.major.minor and libfoo.so.major.

On OpenBSD libtool creates libfoo.so.major.minor even if revision is specified and ld.so will find the appropriate library if libfoo.so or libfoo.so.major is dlopen'd.

gmake[5]: Entering directory '/usr/users/jsg/src/mesa/src/gallium/targets/xvmc'
dest_dir=//usr/X11R6/lib;                       \
for i in  r600; do                                      \
        j=libXvMCgallium.so;                            \
        k=libXvMC${i}.so;                               \
        l=${k}.1.0.0;                   \
        ln -f ${dest_dir}/${j}.1.0.0    \
              ${dest_dir}/${l};                         \
        ln -sf ${l}                                             \
               ${dest_dir}/${k}.1.0;    \
        ln -sf ${l}                                             \
               ${dest_dir}/${k}.1;              \
        ln -sf ${l}                                             \
               ${dest_dir}/${k};                                \
done;                                                           \
rm -f ${dest_dir}/libXvMCgallium.*
ln: //usr/X11R6/lib/libXvMCgallium.so.1.0.0: No such file or directory

$ find src/gallium/ -name "*XvMC*"                                             
src/gallium/targets/xvmc-softpipe/.libs/libXvMCsoftpipe.lai
src/gallium/targets/xvmc-softpipe/.libs/libXvMCsoftpipe.so.1.0
src/gallium/targets/xvmc-softpipe/.libs/libXvMCsoftpipe.la
src/gallium/targets/xvmc-softpipe/libXvMCsoftpipe.la
src/gallium/targets/xvmc-r300/.libs/libXvMCr300.so.1.0
src/gallium/targets/xvmc-r300/.libs/libXvMCr300.lai
src/gallium/targets/xvmc-r300/.libs/libXvMCr300.la
src/gallium/targets/xvmc-r300/libXvMCr300.la
src/gallium/targets/xvmc-r600/.libs/libXvMCr600.lai
src/gallium/targets/xvmc-r600/.libs/libXvMCr600.so.1.0
src/gallium/targets/xvmc-r600/.libs/libXvMCr600.la
src/gallium/targets/xvmc-r600/libXvMCr600.la
src/gallium/targets/xvmc/.deps/libXvMCgallium_la-dummy.Plo
src/gallium/targets/xvmc/.deps/libXvMCgallium_la-target.Plo
src/gallium/targets/xvmc/.libs/libXvMCgallium_la-target.o
src/gallium/targets/xvmc/.libs/libXvMCgallium.so.1.0
src/gallium/targets/xvmc/.libs/libXvMCgallium.lai
src/gallium/targets/xvmc/.libs/libXvMCgallium.la
src/gallium/targets/xvmc/libXvMCgallium.la
src/gallium/targets/xvmc/libXvMCgallium_la-target.lo

It seems the Makefile has already wrongly installed
libXvMCr600.so and libXvMCr600.so.1 into the prefix
and correctly installed libXvMCr600.so.1.0 when the error occurs.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.