[asterisk-commits] wdoekes: branch 1.8 r379547 - in /branches/1.8: ./ include/asterisk/ main/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Sat Jan 19 14:41:41 CST 2013


Author: wdoekes
Date: Sat Jan 19 14:41:35 2013
New Revision: 379547

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=379547
Log:
Add builtin roundf() for systems lacking it.

(closes issue ASTERISK-16854)
Review: https://reviewboard.asterisk.org/r/2276
Reported-by: Ovidiu Sas

Modified:
    branches/1.8/configure
    branches/1.8/configure.ac
    branches/1.8/include/asterisk/autoconfig.h.in
    branches/1.8/include/asterisk/compat.h
    branches/1.8/main/strcompat.c

Modified: branches/1.8/configure.ac
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/configure.ac?view=diff&rev=379547&r1=379546&r2=379547
==============================================================================
--- branches/1.8/configure.ac (original)
+++ branches/1.8/configure.ac Sat Jan 19 14:41:35 2013
@@ -568,7 +568,7 @@
 # so that AC_CHECK_FUNCS can detect functions in that library.
 AC_CHECK_LIB([m], [sqrt])
 # BSD might not have exp2, and/or log2
-AC_CHECK_FUNCS([exp2 log2 exp10 log10 sin cos tan asin acos atan atan2 pow rint exp log remainder fmod round trunc floor ceil])
+AC_CHECK_FUNCS([exp2 log2 exp10 log10 sin cos tan asin acos atan atan2 pow rint exp log remainder fmod round roundf trunc floor ceil])
 
 # Certain architectures don't really have long double, even though
 # AC_CHECK_FUNCS would otherwise find the following functions.

Modified: branches/1.8/include/asterisk/autoconfig.h.in
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/include/asterisk/autoconfig.h.in?view=diff&rev=379547&r1=379546&r2=379547
==============================================================================
--- branches/1.8/include/asterisk/autoconfig.h.in (original)
+++ branches/1.8/include/asterisk/autoconfig.h.in Sat Jan 19 14:41:35 2013
@@ -679,6 +679,9 @@
 /* Define to 1 if you have the `round' function. */
 #undef HAVE_ROUND
 
+/* Define to 1 if you have the `roundf' function. */
+#undef HAVE_ROUNDF
+
 /* Define to 1 if you have the `roundl' function. */
 #undef HAVE_ROUNDL
 
@@ -825,19 +828,19 @@
 /* Define to 1 if you have the `strtoq' function. */
 #undef HAVE_STRTOQ
 
-/* Define to 1 if `ifr_ifru.ifru_hwaddr' is member of `struct ifreq'. */
+/* Define to 1 if `ifr_ifru.ifru_hwaddr' is a member of `struct ifreq'. */
 #undef HAVE_STRUCT_IFREQ_IFR_IFRU_IFRU_HWADDR
 
-/* Define to 1 if `uid' is member of `struct sockpeercred'. */
+/* Define to 1 if `uid' is a member of `struct sockpeercred'. */
 #undef HAVE_STRUCT_SOCKPEERCRED_UID
 
-/* Define to 1 if `st_blksize' is member of `struct stat'. */
+/* Define to 1 if `st_blksize' is a member of `struct stat'. */
 #undef HAVE_STRUCT_STAT_ST_BLKSIZE
 
-/* Define to 1 if `cr_uid' is member of `struct ucred'. */
+/* Define to 1 if `cr_uid' is a member of `struct ucred'. */
 #undef HAVE_STRUCT_UCRED_CR_UID
 
-/* Define to 1 if `uid' is member of `struct ucred'. */
+/* Define to 1 if `uid' is a member of `struct ucred'. */
 #undef HAVE_STRUCT_UCRED_UID
 
 /* Define to 1 if you have the mISDN Supplemental Services library. */
@@ -1111,6 +1114,9 @@
 
 /* Define to the one symbol short name of this package. */
 #undef PACKAGE_TARNAME
+
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
 
 /* Define to the version of this package. */
 #undef PACKAGE_VERSION

Modified: branches/1.8/include/asterisk/compat.h
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/include/asterisk/compat.h?view=diff&rev=379547&r1=379546&r2=379547
==============================================================================
--- branches/1.8/include/asterisk/compat.h (original)
+++ branches/1.8/include/asterisk/compat.h Sat Jan 19 14:41:35 2013
@@ -216,4 +216,12 @@
 #define MY_GLOB_FLAGS   (GLOB_NOMAGIC | GLOB_BRACE)
 #endif
 
-#endif
+#ifndef HAVE_ROUNDF
+#ifdef HAVE_ROUND
+#define roundf(x) ((float)round(x))
+#else
+float roundf(float x);
+#endif
+#endif
+
+#endif

Modified: branches/1.8/main/strcompat.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/main/strcompat.c?view=diff&rev=379547&r1=379546&r2=379547
==============================================================================
--- branches/1.8/main/strcompat.c (original)
+++ branches/1.8/main/strcompat.c Sat Jan 19 14:41:35 2013
@@ -16,7 +16,9 @@
 
 /*! \file
  *
- * \brief Compatibility functions for strsep and strtoq missing on Solaris 
+ * \brief Compatibility functions for strsep and strtoq missing on Solaris
+ *
+ * .. and lots of other functions too.
  */
 
 /*** MODULEINFO
@@ -568,3 +570,15 @@
 	return mktemp_internal(path, 0, MKTEMP_DIR) ? NULL : path;
 }
 #endif
+
+#ifndef HAVE_ROUNDF
+#ifndef HAVE_ROUND
+float roundf(float x) {
+	if (x < 0.0) {
+		return (float)(int)((x) - 0.5);
+	} else {
+		return (float)(int)((x) + 0.5);
+	}
+}
+#endif
+#endif




More information about the asterisk-commits mailing list