Re: Help with architecture not supporting SSE (Was: Bug#656755: libhmsbeagle FTBFS on everything except amd64)
* IOhannes m zmölnig <email@example.com> [120122 19:46]:
> this basically means: disable building for SSE instructions on all
> platforms (apart from amd64, if you care about it)
For libraries where SSE matters and where there is no way to make the
library detect availability itself and only use it when available there
is also another trick:
Build and install the library multiple times once with SSE and once
without and let the dynamic linker chose the right one. In /usr/lib
there should be the one working on all system supported by Debian for
that architecture, while there are some subdirectories where an version
with more intructions used can be placed and used at runtime when
supported. (LD_LIBRARY_PATH=/lib:/usr/lib LD_DEBUG=libs /bin/true will
show you a list of paths looked at at you computer, finding out which of
those allows what intruction sets might be more complicated and require
reading the ld.so source code and the kernel code responsible for
/proc/cpu unless there is finally some information about this somewhere
in the net).
Though that only makes sense if the speed increment is worth the
additional afford at build time, the bigger packages and the more
fragmented user base.
And you have to make sure the code also works without SSE anyway...
Bernhard R. Link