From: Paul Belanger Date: Thu, 9 Sep 2010 22:34:35 +0000 (+0000) Subject: GCC 4.2.x optimizations result in improper behavior of GSM codec X-Git-Tag: 1.4.37-rc1~24 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=725e695859e3684b2a5abbccb7ac61195770317c;p=thirdparty%2Fasterisk.git GCC 4.2.x optimizations result in improper behavior of GSM codec (closes issue #17688) Reported by: pprindeville Patches: asterisk-trunk-bugid11243.patch uploaded by pprindeville (license 347) Tested by: mkeuter, pprindeville git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@285817 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/codecs/gsm/Makefile b/codecs/gsm/Makefile index 43110f314a..36bde07a91 100644 --- a/codecs/gsm/Makefile +++ b/codecs/gsm/Makefile @@ -37,6 +37,14 @@ WAV49 = -DWAV49 ######### ppro's, etc, as well as the AMD K6 and K7. The compile will ######### probably require gcc. +# Due to the gsm codec beeing broken when compiled with gcc version 4.2 +# and optimization higher than -O2 we are checking for that version and +# set the optimization to -O2 in this case. + +ifeq ($(shell $(CC) -v 2>&1 | awk '/^gcc version/ { split($$3, v, "."); printf "%s.%s\n", v[1], v[2]; }' ),4.2) +OPTIMIZE=-O2 +endif + ifeq (,$(findstring $(shell uname -s),Darwin SunOS)) ifeq (,$(findstring $(PROC),x86_64 amd64 ultrasparc sparc64 arm armv5b armeb hppa2.0 ppc powerpc ppc64 ia64 s390 bfin mipsel mips)) ifeq (,$(findstring $(shell uname -m),ppc ppc64 alpha armv4l s390))