[alsa-devel] [PATCH] ctlparse: Respect softfloat configure option

Alexander Stein a.stein at systec-electronic.com
Thu May 19 15:16:36 CEST 2011


If we want softlfoat we can't use ceil which uses libm.

Signed-off-by: Alexander Stein <a.stein at systec-electronic.com>
---
This patch relates to
http://mailman.alsa-project.org/pipermail/alsa-devel/2011-May/039693.html
and following.

 src/control/ctlparse.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/src/control/ctlparse.c b/src/control/ctlparse.c
index a929816..a16f96a 100644
--- a/src/control/ctlparse.c
+++ b/src/control/ctlparse.c
@@ -33,8 +33,17 @@
 
 /* Function to convert from percentage to volume. val = percentage */
 
+#ifdef HAVE_SOFT_FLOAT
+static inline long int convert_prange1(long val, long min, long max)
+{
+	long temp = val * (max - min);
+	return temp / 100 + min + ((temp % 100) == 0 ? 0 : 1);
+}
+#else
+
 #define convert_prange1(val, min, max) \
 	ceil((val) * ((max) - (min)) * 0.01 + (min))
+#endif
 
 #define check_range(val, min, max) \
 	((val < min) ? (min) : ((val > max) ? (max) : (val)))
-- 
1.7.3.4



More information about the Alsa-devel mailing list