From eb9f0dcbf88274d52747d9e9d2196e374d12abba Mon Sep 17 00:00:00 2001 From: Max Horn Date: Tue, 26 Feb 2008 17:03:10 +0000 Subject: [PATCH] Completed fix for bug #1523129 (SOLARIS: solaris 8 build broken) svn-id: r30972 --- sound/softsynth/mt32/partial.cpp | 13 +++++++++---- sound/softsynth/mt32/synth.cpp | 13 +++++++++---- sound/softsynth/mt32/tables.cpp | 13 +++++++++---- 3 files changed, 27 insertions(+), 12 deletions(-) diff --git a/sound/softsynth/mt32/partial.cpp b/sound/softsynth/mt32/partial.cpp index 9d32282a82d..1aab2a8de7e 100644 --- a/sound/softsynth/mt32/partial.cpp +++ b/sound/softsynth/mt32/partial.cpp @@ -25,11 +25,16 @@ #include "mt32emu.h" -#ifdef MACOSX -// Older versions of Mac OS X didn't supply a powf function. To ensure -// binary compatibility, we force using pow instead of powf (the only -// potential drawback is that it might be a little bit slower). +#if defined(MACOSX) || defined(__solaris__) +// Older versions of Mac OS X didn't supply a powf function, so using it +// will cause a binary incompatibility when trying to run a binary built +// on a newer OS X release on an olderr one. And Solaris 8 doesn't provide +// powf, floorf, fabsf etc. at all. +// Hence we re-define them here. The only potential drawback is that it +// might be a little bit slower this way. #define powf pow +#define floorf floor +#define fabsf fabs #endif #define FIXEDPOINT_UDIV(x, y, point) (((x) << (point)) / ((y))) diff --git a/sound/softsynth/mt32/synth.cpp b/sound/softsynth/mt32/synth.cpp index e6cd6963a88..785e8098c7a 100644 --- a/sound/softsynth/mt32/synth.cpp +++ b/sound/softsynth/mt32/synth.cpp @@ -25,11 +25,16 @@ #include "mt32emu.h" -#ifdef MACOSX -// Older versions of Mac OS X didn't supply a powf function. To ensure -// binary compatibility, we force using pow instead of powf (the only -// potential drawback is that it might be a little bit slower). +#if defined(MACOSX) || defined(__solaris__) +// Older versions of Mac OS X didn't supply a powf function, so using it +// will cause a binary incompatibility when trying to run a binary built +// on a newer OS X release on an olderr one. And Solaris 8 doesn't provide +// powf, floorf, fabsf etc. at all. +// Hence we re-define them here. The only potential drawback is that it +// might be a little bit slower this way. #define powf pow +#define floorf floor +#define fabsf fabs #endif namespace MT32Emu { diff --git a/sound/softsynth/mt32/tables.cpp b/sound/softsynth/mt32/tables.cpp index 4591ea22e37..20b7cf289a3 100644 --- a/sound/softsynth/mt32/tables.cpp +++ b/sound/softsynth/mt32/tables.cpp @@ -25,11 +25,16 @@ #include "mt32emu.h" -#ifdef MACOSX -// Older versions of Mac OS X didn't supply a powf function. To ensure -// binary compatibility, we force using pow instead of powf (the only -// potential drawback is that it might be a little bit slower). +#if defined(MACOSX) || defined(__solaris__) +// Older versions of Mac OS X didn't supply a powf function, so using it +// will cause a binary incompatibility when trying to run a binary built +// on a newer OS X release on an olderr one. And Solaris 8 doesn't provide +// powf, floorf, fabsf etc. at all. +// Hence we re-define them here. The only potential drawback is that it +// might be a little bit slower this way. #define powf pow +#define floorf floor +#define fabsf fabs #endif #define FIXEDPOINT_MAKE(x, point) ((Bit32u)((1 << point) * x))