diff --git a/configure b/configure index 34c83fe24d3c346d5a72df22589d01d3b42cddbd..93aa8e17a6625d63e809f3f7ce90b4b731cacef9 100755 --- a/configure +++ b/configure @@ -5675,6 +5675,7 @@ for ac_func in \ __libc_fork \ _lwp_create \ clone \ + ecvt \ finite \ fpclass \ getnetbyaddr \ @@ -5707,12 +5708,12 @@ for ac_func in \ do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:5711: checking for $ac_func" >&5 +echo "configure:5712: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5716 "configure" +#line 5717 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -5735,7 +5736,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:5739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5817,17 +5818,17 @@ for ac_hdr in \ do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5821: checking for $ac_hdr" >&5 +echo "configure:5822: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5826 "configure" +#line 5827 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5831: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5832: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5854,12 +5855,12 @@ fi done echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6 -echo "configure:5858: checking whether stat file-mode macros are broken" >&5 +echo "configure:5859: checking whether stat file-mode macros are broken" >&5 if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5863 "configure" +#line 5864 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/stat.h> @@ -5912,12 +5913,12 @@ fi echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:5916: checking for working const" >&5 +echo "configure:5917: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5921 "configure" +#line 5922 "configure" #include "confdefs.h" int main() { @@ -5966,7 +5967,7 @@ ccp = (char const *const *) p; ; return 0; } EOF -if { (eval echo configure:5970: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5971: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -5987,21 +5988,21 @@ EOF fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:5991: checking for inline" >&5 +echo "configure:5992: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <<EOF -#line 5998 "configure" +#line 5999 "configure" #include "confdefs.h" int main() { } int $ac_kw foo() { ; return 0; } EOF -if { (eval echo configure:6005: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6006: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -6027,12 +6028,12 @@ EOF esac echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:6031: checking for ANSI C header files" >&5 +echo "configure:6032: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6036 "configure" +#line 6037 "configure" #include "confdefs.h" #include <stdlib.h> #include <stdarg.h> @@ -6040,7 +6041,7 @@ else #include <float.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6044: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6045: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6057,7 +6058,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 6061 "configure" +#line 6062 "configure" #include "confdefs.h" #include <string.h> EOF @@ -6075,7 +6076,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 6079 "configure" +#line 6080 "configure" #include "confdefs.h" #include <stdlib.h> EOF @@ -6096,7 +6097,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext <<EOF -#line 6100 "configure" +#line 6101 "configure" #include "confdefs.h" #include <ctype.h> #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -6107,7 +6108,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:6111: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -6131,12 +6132,12 @@ EOF fi echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:6135: checking for size_t" >&5 +echo "configure:6136: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6140 "configure" +#line 6141 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -6164,7 +6165,7 @@ EOF fi echo $ac_n "checking size of long long""... $ac_c" 1>&6 -echo "configure:6168: checking size of long long" >&5 +echo "configure:6169: checking size of long long" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6172,7 +6173,7 @@ else ac_cv_sizeof_long_long=0 else cat > conftest.$ac_ext <<EOF -#line 6176 "configure" +#line 6177 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -6183,7 +6184,7 @@ main() exit(0); } EOF -if { (eval echo configure:6187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6188: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_long_long=`cat conftestval` else @@ -6205,12 +6206,12 @@ EOF echo $ac_n "checking "whether we can use re-entrant gethostbyname_r Linux style"""... $ac_c" 1>&6 -echo "configure:6209: checking "whether we can use re-entrant gethostbyname_r Linux style"" >&5 +echo "configure:6210: checking "whether we can use re-entrant gethostbyname_r Linux style"" >&5 if eval "test \"`echo '$''{'wine_cv_linux_gethostbyname_r_6'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6214 "configure" +#line 6215 "configure" #include "confdefs.h" #include <netdb.h> @@ -6231,7 +6232,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:6235: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6236: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_linux_gethostbyname_r_6=yes else @@ -6257,12 +6258,12 @@ EOF if test "$ac_cv_header_linux_joystick_h" = "yes" then echo $ac_n "checking "whether linux/joystick.h uses the Linux 2.2+ API"""... $ac_c" 1>&6 -echo "configure:6261: checking "whether linux/joystick.h uses the Linux 2.2+ API"" >&5 +echo "configure:6262: checking "whether linux/joystick.h uses the Linux 2.2+ API"" >&5 if eval "test \"`echo '$''{'wine_cv_linux_joystick_22_api'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6266 "configure" +#line 6267 "configure" #include "confdefs.h" #include <sys/ioctl.h> @@ -6277,7 +6278,7 @@ int main() { /*empty*/ ; return 0; } EOF -if { (eval echo configure:6281: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6282: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_linux_joystick_22_api=yes else @@ -6304,12 +6305,12 @@ fi if test "$ac_cv_header_sys_vfs_h" = "yes" then echo $ac_n "checking "whether sys/vfs.h defines statfs"""... $ac_c" 1>&6 -echo "configure:6308: checking "whether sys/vfs.h defines statfs"" >&5 +echo "configure:6309: checking "whether sys/vfs.h defines statfs"" >&5 if eval "test \"`echo '$''{'wine_cv_sys_vfs_has_statfs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6313 "configure" +#line 6314 "configure" #include "confdefs.h" #include <sys/types.h> @@ -6326,7 +6327,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:6330: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6331: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_sys_vfs_has_statfs=yes else @@ -6353,12 +6354,12 @@ fi if test "$ac_cv_header_sys_statfs_h" = "yes" then echo $ac_n "checking "whether sys/statfs.h defines statfs"""... $ac_c" 1>&6 -echo "configure:6357: checking "whether sys/statfs.h defines statfs"" >&5 +echo "configure:6358: checking "whether sys/statfs.h defines statfs"" >&5 if eval "test \"`echo '$''{'wine_cv_sys_statfs_has_statfs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6362 "configure" +#line 6363 "configure" #include "confdefs.h" #include <sys/types.h> @@ -6373,7 +6374,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:6377: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6378: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_sys_statfs_has_statfs=yes else @@ -6400,12 +6401,12 @@ fi if test "$ac_cv_header_sys_mount_h" = "yes" then echo $ac_n "checking "whether sys/mount.h defines statfs"""... $ac_c" 1>&6 -echo "configure:6404: checking "whether sys/mount.h defines statfs"" >&5 +echo "configure:6405: checking "whether sys/mount.h defines statfs"" >&5 if eval "test \"`echo '$''{'wine_cv_sys_mount_has_statfs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6409 "configure" +#line 6410 "configure" #include "confdefs.h" #include <sys/types.h> @@ -6420,7 +6421,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:6424: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6425: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_sys_mount_has_statfs=yes else @@ -6446,7 +6447,7 @@ fi echo $ac_n "checking "for statfs.f_bfree"""... $ac_c" 1>&6 -echo "configure:6450: checking "for statfs.f_bfree"" >&5 +echo "configure:6451: checking "for statfs.f_bfree"" >&5 if eval "test \"`echo '$''{'wine_cv_statfs_bfree'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6455,7 +6456,7 @@ else wine_cv_statfs_bfree=no else cat > conftest.$ac_ext <<EOF -#line 6459 "configure" +#line 6460 "configure" #include "confdefs.h" #include <sys/types.h> @@ -6482,7 +6483,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:6486: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6487: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_statfs_bfree=yes else @@ -6506,7 +6507,7 @@ EOF fi echo $ac_n "checking "for statfs.f_bavail"""... $ac_c" 1>&6 -echo "configure:6510: checking "for statfs.f_bavail"" >&5 +echo "configure:6511: checking "for statfs.f_bavail"" >&5 if eval "test \"`echo '$''{'wine_cv_statfs_bavail'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6515,7 +6516,7 @@ else wine_cv_statfs_bavail=no else cat > conftest.$ac_ext <<EOF -#line 6519 "configure" +#line 6520 "configure" #include "confdefs.h" #include <sys/types.h> @@ -6542,7 +6543,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:6546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6547: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* wine_cv_statfs_bavail=yes else @@ -6567,12 +6568,12 @@ fi echo $ac_n "checking "for msg_accrights in struct msghdr"""... $ac_c" 1>&6 -echo "configure:6571: checking "for msg_accrights in struct msghdr"" >&5 +echo "configure:6572: checking "for msg_accrights in struct msghdr"" >&5 if eval "test \"`echo '$''{'ac_cv_c_msg_accrights'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6576 "configure" +#line 6577 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/socket.h> @@ -6580,7 +6581,7 @@ int main() { struct msghdr hdr; hdr.msg_accrights=0 ; return 0; } EOF -if { (eval echo configure:6584: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_msg_accrights="yes" else @@ -6603,12 +6604,12 @@ fi echo $ac_n "checking "for sun_len in struct sockaddr_un"""... $ac_c" 1>&6 -echo "configure:6607: checking "for sun_len in struct sockaddr_un"" >&5 +echo "configure:6608: checking "for sun_len in struct sockaddr_un"" >&5 if eval "test \"`echo '$''{'ac_cv_c_sun_len'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6612 "configure" +#line 6613 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/socket.h> @@ -6617,7 +6618,7 @@ int main() { static struct sockaddr_un addr; addr.sun_len = 1 ; return 0; } EOF -if { (eval echo configure:6621: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6622: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_sun_len="yes" else @@ -6640,12 +6641,12 @@ fi echo $ac_n "checking "whether we need to define __i386__"""... $ac_c" 1>&6 -echo "configure:6644: checking "whether we need to define __i386__"" >&5 +echo "configure:6645: checking "whether we need to define __i386__"" >&5 if eval "test \"`echo '$''{'ac_cv_cpp_def_i386'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6649 "configure" +#line 6650 "configure" #include "confdefs.h" #if (defined(i386) || defined(__i386)) && !defined(__i386__) yes diff --git a/configure.in b/configure.in index 37305e1dd7b9c896c6d1ba9236dfbbb82f4f4a8c..a414b2caa07ae9b42ebdda8ec2fce9e4245d8773 100644 --- a/configure.in +++ b/configure.in @@ -781,6 +781,7 @@ AC_CHECK_FUNCS(\ __libc_fork \ _lwp_create \ clone \ + ecvt \ finite \ fpclass \ getnetbyaddr \ diff --git a/include/config.h.in b/include/config.h.in index 5e9ec88faf4353a96cc683c145c45ad87e4d169b..932810ccc3f91cce0b843d154c90aaf879ba3364 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -178,6 +178,9 @@ /* Define if you have the dlopen function. */ #undef HAVE_DLOPEN +/* Define if you have the ecvt function. */ +#undef HAVE_ECVT + /* Define if you have the finite function. */ #undef HAVE_FINITE diff --git a/library/port.c b/library/port.c index 810b6823a562a7bf27e39e81028b9618f78d4c04..af0c24429ff42d490dbe603807e995ecacbdf096 100644 --- a/library/port.c +++ b/library/port.c @@ -558,3 +558,49 @@ unsigned short* wine_rewrite_s4tos2(const wchar_t* str4 ) return str2; } + +#ifndef HAVE_ECVT +/* + * NetBSD 1.5 doesn't have ecvt, fcvt, gcvt. We just check for ecvt, though. + * Fix/verify these implementations ! + */ + +/*********************************************************************** + * ecvt + */ +char *ecvt (double number, int ndigits, int *decpt, int *sign) +{ + static buf[40]; /* ought to be enough */ + char *dec; + sprintf(buf, "%.*e", ndigits /* FIXME wrong */, number); + *sign = (number < 0); + dec = strchr(buf, '.'); + *decpt = (dec) ? (int)dec - (int)buf : -1; + return buf; +} + +/*********************************************************************** + * fcvt + */ +char *fcvt (double number, int ndigits, int *decpt, int *sign) +{ + static buf[40]; /* ought to be enough */ + char *dec; + sprintf(buf, "%.*e", ndigits, number); + *sign = (number < 0); + dec = strchr(buf, '.'); + *decpt = (dec) ? (int)dec - (int)buf : -1; + return buf; +} + +/*********************************************************************** + * gcvt + * + * FIXME: uses both E and F. + */ +char *gcvt (double number, size_t ndigit, char *buff) +{ + sprintf(buff, "%.*E", ndigit, number); + return buff; +} +#endif /* HAVE_ECVT */