Re: Help with architecture not supporting SSE (Was: Bug#656755: libhmsbeagle FTBFS on everything except amd64)
On 01/22/12 14:31, Andreas Tille wrote:
I have to admit that I do not have any experience with SSE issues. Any
advise what to do in cases like this (see build logs linked below)?
afaik it is like this: the only architecture in debian that is
guaranteed to support SSE instructions in amd64 (x86_64), as there are
no x86_64 CPUs available, that do not support SSE.
while many people who install i386 will run it on a modern CPU (that
supports SSE), it is not mandatory (and indeed a lot of people are still
running linux-based distributions including debian on very old
hardware), therefore your package should (must) provide packages that do
not rely on SSE being available.
this basically means: disable building for SSE instructions on all
platforms (apart from amd64, if you care about it)
hopefully your upstream provides a way to easily turn off SSE instructions.
if the upstream code depends on SSE instructions, you might want to
patch the code to provide non-SSE replacements for the SIMD-functions
and submit a patch to upstream.
PS: ah, and ou (or upstream or anybody else) should never include
<emmintrin.h> unconditionally. if you tell gcc to use SSE-instructions
(which will allow you to include <emmintrin.h> without errors), it will
also define the __SSE__ macro)