package: speex
severity: important
version: 1.2~rc1-1
tags: patch
Currently speex tries to use armv4 assembler on all arm ports. This
fails to build on
armhf probablly because armhf uses the thumb2 instruction set (it is
possible to use
arm instructions but thumb2 is preffered on these processors.
I have attatched a patch to debian/rules which restricts the use of the
armv4 assembler
to arm and armel.
diff -ur speex-1.2~rc1/debian/rules speex-1.2~rc1.new/debian/rules
--- speex-1.2~rc1/debian/rules 2011-12-10 05:44:29.000000000 +0000
+++ speex-1.2~rc1.new/debian/rules 2011-12-10 05:11:44.000000000 +0000
@@ -19,6 +19,7 @@
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_ARCH_CPU ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
+DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
objdir = objs
@@ -28,7 +29,12 @@
all_objs = $(objdir) $(objdir_sse) $(objdir_fixedpoint)
arch_objs = $(objdir)
-ifeq ($(DEB_HOST_ARCH_CPU),arm)
+#we want this on arm and armel but NOT armhf
+ifeq ($(DEB_HOST_ARCH),armel)
+objdir = $(objdir_fixedpoint)
+EXTRA_CONFIG_FLAGS = --enable-arm4-asm
+endif
+ifeq ($(DEB_HOST_ARCH),arm)
objdir = $(objdir_fixedpoint)
EXTRA_CONFIG_FLAGS = --enable-arm4-asm
endif