bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: strtod on old platforms


From: Bruno Haible
Subject: Re: strtod on old platforms
Date: Sun, 24 Apr 2011 14:25:03 +0200
User-agent: KMail/1.9.9

Here's a similar proposed patch for strtod:


2011-04-24  Bruno Haible  <address@hidden>

        strtod: Remove check for strtod, unless supporting old platforms.
        * modules/strtod-obsolete: New file.
        * m4/strtod-obsolete.m4: New file.
        * m4/strtod.m4 (gl_FUNC_STRTOD): Don't check whether strtod is declared
        if gl_FUNC_STRTOD_OBSOLETE is not also defined.
        * modules/strtod (Depends-on): Add strtod-obsolete.
        * doc/posix-functions/strtod.texi: Mention module strtod-obsolete.

=========================== modules/strtod-obsolete ===========================
Description:
strtod() function for old platforms.

Status:
obsolete

Notice:
This module is obsolete.

Files:
m4/strtod-obsolete.m4

Depends-on:
strtod

configure.ac:
gl_FUNC_STRTOD_OBSOLETE

Makefile.am:

Include:
<string.h>

License:
LGPLv2+

Maintainer:
Bruno Haible
============================ m4/strtod-obsolete.m4 ============================
# strtod-obsolete.m4 serial 1
dnl Copyright (C) 2011 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.

AC_DEFUN([gl_FUNC_STRTOD_OBSOLETE],
[
  dnl The real code is in strtod.m4.
  :
])
===============================================================================
--- doc/posix-functions/strtod.texi.orig        Sun Apr 24 14:24:14 2011
+++ doc/posix-functions/strtod.texi     Sun Apr 24 14:19:37 2011
@@ -4,14 +4,11 @@
 
 POSIX specification:@* 
@url{http://www.opengroup.org/onlinepubs/9699919799/functions/strtod.html}
 
-Gnulib module: strtod
+Gnulib module: strtod or strtod-obsolete
 
-Portability problems fixed by Gnulib:
+Portability problems fixed by either Gnulib module @code{strtod} or 
@code{strtod-obsolete}:
 @itemize
 @item
-This function is missing on some old platforms.
-
address@hidden
 This function mis-parses strings with leading @samp{+} on some old platforms:
 Old versions of Linux.
 
@@ -67,6 +64,12 @@
 AIX 7.1.
 @end itemize
 
+Portability problems fixed by Gnulib module @code{strtod-obsolete}:
address@hidden
address@hidden
+This function is missing on some old platforms.
address@hidden itemize
+
 Portability problems not fixed by Gnulib:
 @itemize
 @item
--- m4/strtod.m4.orig   Sun Apr 24 14:24:14 2011
+++ m4/strtod.m4        Sun Apr 24 14:17:59 2011
@@ -1,4 +1,4 @@
-# strtod.m4 serial 19
+# strtod.m4 serial 20
 dnl Copyright (C) 2002-2003, 2006-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -7,15 +7,18 @@
 AC_DEFUN([gl_FUNC_STRTOD],
 [
   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
-  dnl Test whether strtod is declared.
-  dnl Don't call AC_FUNC_STRTOD, because it does not have the right guess
-  dnl when cross-compiling.
-  dnl Don't call AC_CHECK_FUNCS([strtod]) because it would collide with the
-  dnl ac_cv_func_strtod variable set by the AC_FUNC_STRTOD macro.
-  AC_CHECK_DECLS_ONCE([strtod])
-  if test $ac_cv_have_decl_strtod != yes; then
-    HAVE_STRTOD=0
-  else
+  m4_ifdef([gl_FUNC_STRTOD_OBSOLETE], [
+    dnl Test whether strtod is declared.
+    dnl Don't call AC_FUNC_STRTOD, because it does not have the right guess
+    dnl when cross-compiling.
+    dnl Don't call AC_CHECK_FUNCS([strtod]) because it would collide with the
+    dnl ac_cv_func_strtod variable set by the AC_FUNC_STRTOD macro.
+    AC_CHECK_DECLS_ONCE([strtod])
+    if test $ac_cv_have_decl_strtod != yes; then
+      HAVE_STRTOD=0
+    fi
+  ])
+  if test $HAVE_STRTOD = 1; then
     AC_CACHE_CHECK([whether strtod obeys C99], [gl_cv_func_strtod_works],
       [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
 #include <stdlib.h>
--- modules/strtod.orig Sun Apr 24 14:24:14 2011
+++ modules/strtod      Sun Apr 24 14:17:34 2011
@@ -10,6 +10,7 @@
 c-ctype
 stdbool
 stdlib
+strtod-obsolete
 
 configure.ac:
 gl_FUNC_STRTOD

-- 
In memoriam Siamanto <http://en.wikipedia.org/wiki/Siamanto>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]