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.
/* NDEBUG */
#undef NDEBUG
+
+/* Do we have FPU on this machine? */
+#undef HAVE_SOFT_FLOAT
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
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
#ifndef __ALSA_PCM_PLUGIN_H
+#include "config.h"
+
/**
* \defgroup PCM_Plugins PCM Plugins
* \ingroup PCM
#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