On 01/22/12 14:31, Andreas Tille wrote:
Hi, 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.
fgmsdar IOhannesPS: 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)