diff options
author | Jaroslav Kysela <perex@perex.cz> | 2002-04-24 14:41:55 +0000 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2002-04-24 14:41:55 +0000 |
commit | f23813b7e98bc6e0db7413ecb330db7e5f1b2aa9 (patch) | |
tree | dadf7e8ae3d5835dcf9f70a9292bf51d006c1263 | |
parent | c39d1a665d265b80770f62fed565854ed1578426 (diff) | |
download | alsa-lib-f23813b7e98bc6e0db7413ecb330db7e5f1b2aa9.tar.gz |
Added HAVE_SOFT_FLOAT (--with-softfloat)
-rw-r--r-- | INSTALL | 8 | ||||
-rw-r--r-- | acconfig.h | 3 | ||||
-rw-r--r-- | configure.in | 5 | ||||
-rw-r--r-- | include/pcm_plugin.h | 8 |
4 files changed, 24 insertions, 0 deletions
@@ -111,3 +111,11 @@ For platform names in the form cpu-vendor-os (or aliases for this) you should look in 'config.guess' script. Target and all paths used here are only examples and should not be directly applicable to your system. + +Configuration for machines without FPU +-------------------------------------- + +If your machine does not have FP unit, you should use '--with-softfloat' +option. This option disables usage of float numbers in PCM route plugin. +ALSA could then leave much more CPU cycles for your applications, but you +could still need some floating point emulator. @@ -12,3 +12,6 @@ /* NDEBUG */ #undef NDEBUG + +/* Do we have FPU on this machine? */ +#undef HAVE_SOFT_FLOAT diff --git a/configure.in b/configure.in index 8e82a804..40badb5e 100644 --- a/configure.in +++ b/configure.in @@ -85,6 +85,7 @@ AC_HEADER_STDC AM_CONFIG_HEADER(include/config.h) AC_CHECK_HEADERS(sound/asound.h) + dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_C_INLINE @@ -120,6 +121,10 @@ else AC_MSG_RESULT(no) fi +AC_ARG_WITH(softfloat, + [ --with-softfloat do you have floating point unit on this machine? (optional)], + [ AC_DEFINE(HAVE_SOFT_FLOAT, "1")],) + dnl Check for architecture AC_MSG_CHECKING(for architecture) case "$target" in diff --git a/include/pcm_plugin.h b/include/pcm_plugin.h index 6cd8acd8..e675f15f 100644 --- a/include/pcm_plugin.h +++ b/include/pcm_plugin.h @@ -31,6 +31,8 @@ #ifndef __ALSA_PCM_PLUGIN_H +#include "config.h" + /** * \defgroup PCM_Plugins PCM Plugins * \ingroup PCM @@ -41,7 +43,13 @@ #define SND_PCM_PLUGIN_RATE_MIN 4000 /**< minimal rate for the rate plugin */ #define SND_PCM_PLUGIN_RATE_MAX 192000 /**< maximal rate for the rate plugin */ +/* ROUTE_FLOAT should be set to 0 for machines without FP unit - like iPAQ */ +#ifdef HAVE_SOFT_FLOAT +#define SND_PCM_PLUGIN_ROUTE_FLOAT 0 /**< use integers for route plugin */ +#else #define SND_PCM_PLUGIN_ROUTE_FLOAT 1 /**< use floats for route plugin */ +#endif + #define SND_PCM_PLUGIN_ROUTE_RESOLUTION 16 /**< integer resolution for route plugin */ #if SND_PCM_PLUGIN_ROUTE_FLOAT |