Added configure check for str[n]casecmp.
diff --git a/configure b/configure
index 25ac0ef..abb6cfd 100755
--- a/configure
+++ b/configure
@@ -4407,8 +4407,9 @@
rfork \
sendmsg \
sigaltstack \
+ strcasecmp \
strerror \
- stricmp \
+ strncasecmp \
tcgetattr \
timegm \
usleep \
@@ -4418,12 +4419,12 @@
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:4422: checking for $ac_func" >&5
+echo "configure:4423: 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 4427 "configure"
+#line 4428 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@@ -4446,7 +4447,7 @@
; return 0; }
EOF
-if { (eval echo configure:4450: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -4509,17 +4510,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:4513: checking for $ac_hdr" >&5
+echo "configure:4514: 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 4518 "configure"
+#line 4519 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4523: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4524: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4546,12 +4547,12 @@
done
echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
-echo "configure:4550: checking whether stat file-mode macros are broken" >&5
+echo "configure:4551: 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 4555 "configure"
+#line 4556 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/stat.h>
@@ -4604,12 +4605,12 @@
echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:4608: checking for working const" >&5
+echo "configure:4609: 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 4613 "configure"
+#line 4614 "configure"
#include "confdefs.h"
int main() {
@@ -4658,7 +4659,7 @@
; return 0; }
EOF
-if { (eval echo configure:4662: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4663: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_const=yes
else
@@ -4679,21 +4680,21 @@
fi
echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:4683: checking for inline" >&5
+echo "configure:4684: 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 4690 "configure"
+#line 4691 "configure"
#include "confdefs.h"
int main() {
} $ac_kw foo() {
; return 0; }
EOF
-if { (eval echo configure:4697: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4698: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_inline=$ac_kw; break
else
@@ -4719,12 +4720,12 @@
esac
echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:4723: checking for ANSI C header files" >&5
+echo "configure:4724: 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 4728 "configure"
+#line 4729 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -4732,7 +4733,7 @@
#include <float.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4736: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4737: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4749,7 +4750,7 @@
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 4753 "configure"
+#line 4754 "configure"
#include "confdefs.h"
#include <string.h>
EOF
@@ -4767,7 +4768,7 @@
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 4771 "configure"
+#line 4772 "configure"
#include "confdefs.h"
#include <stdlib.h>
EOF
@@ -4788,7 +4789,7 @@
:
else
cat > conftest.$ac_ext <<EOF
-#line 4792 "configure"
+#line 4793 "configure"
#include "confdefs.h"
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -4799,7 +4800,7 @@
exit (0); }
EOF
-if { (eval echo configure:4803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
:
else
@@ -4823,12 +4824,12 @@
fi
echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:4827: checking for size_t" >&5
+echo "configure:4828: 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 4832 "configure"
+#line 4833 "configure"
#include "confdefs.h"
#include <sys/types.h>
#if STDC_HEADERS
@@ -4856,7 +4857,7 @@
fi
echo $ac_n "checking size of long long""... $ac_c" 1>&6
-echo "configure:4860: checking size of long long" >&5
+echo "configure:4861: 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
@@ -4864,7 +4865,7 @@
ac_cv_sizeof_long_long=0
else
cat > conftest.$ac_ext <<EOF
-#line 4868 "configure"
+#line 4869 "configure"
#include "confdefs.h"
#include <stdio.h>
main()
@@ -4875,7 +4876,7 @@
exit(0);
}
EOF
-if { (eval echo configure:4879: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4880: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
ac_cv_sizeof_long_long=`cat conftestval`
else
@@ -4898,12 +4899,12 @@
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:4902: checking "whether linux/joystick.h uses the Linux 2.2+ API"" >&5
+echo "configure:4903: 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 4907 "configure"
+#line 4908 "configure"
#include "confdefs.h"
#include <sys/ioctl.h>
@@ -4915,7 +4916,7 @@
/*empty*/
; return 0; }
EOF
-if { (eval echo configure:4919: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4920: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_linux_joystick_22_api=yes
else
@@ -4942,12 +4943,12 @@
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:4946: checking "whether sys/vfs.h defines statfs"" >&5
+echo "configure:4947: 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 4951 "configure"
+#line 4952 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -4964,7 +4965,7 @@
; return 0; }
EOF
-if { (eval echo configure:4968: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4969: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_sys_vfs_has_statfs=yes
else
@@ -4991,12 +4992,12 @@
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:4995: checking "whether sys/statfs.h defines statfs"" >&5
+echo "configure:4996: 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 5000 "configure"
+#line 5001 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5011,7 +5012,7 @@
; return 0; }
EOF
-if { (eval echo configure:5015: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5016: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_sys_statfs_has_statfs=yes
else
@@ -5038,12 +5039,12 @@
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:5042: checking "whether sys/mount.h defines statfs"" >&5
+echo "configure:5043: 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 5047 "configure"
+#line 5048 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5058,7 +5059,7 @@
; return 0; }
EOF
-if { (eval echo configure:5062: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5063: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_sys_mount_has_statfs=yes
else
@@ -5084,7 +5085,7 @@
echo $ac_n "checking "for statfs.f_bfree"""... $ac_c" 1>&6
-echo "configure:5088: checking "for statfs.f_bfree"" >&5
+echo "configure:5089: 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
@@ -5093,7 +5094,7 @@
wine_cv_statfs_bfree=no
else
cat > conftest.$ac_ext <<EOF
-#line 5097 "configure"
+#line 5098 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5120,7 +5121,7 @@
; return 0; }
EOF
-if { (eval echo configure:5124: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5125: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_statfs_bfree=yes
else
@@ -5144,7 +5145,7 @@
fi
echo $ac_n "checking "for statfs.f_bavail"""... $ac_c" 1>&6
-echo "configure:5148: checking "for statfs.f_bavail"" >&5
+echo "configure:5149: 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
@@ -5153,7 +5154,7 @@
wine_cv_statfs_bavail=no
else
cat > conftest.$ac_ext <<EOF
-#line 5157 "configure"
+#line 5158 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5180,7 +5181,7 @@
; return 0; }
EOF
-if { (eval echo configure:5184: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5185: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_statfs_bavail=yes
else
@@ -5205,7 +5206,7 @@
echo $ac_n "checking "for working sigaltstack"""... $ac_c" 1>&6
-echo "configure:5209: checking "for working sigaltstack"" >&5
+echo "configure:5210: checking "for working sigaltstack"" >&5
if eval "test \"`echo '$''{'ac_cv_c_working_sigaltstack'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -5214,7 +5215,7 @@
else
cat > conftest.$ac_ext <<EOF
-#line 5218 "configure"
+#line 5219 "configure"
#include "confdefs.h"
#include <stdio.h>
@@ -5252,7 +5253,7 @@
}
EOF
-if { (eval echo configure:5256: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
ac_cv_c_working_sigaltstack="yes"
else
@@ -5279,12 +5280,12 @@
echo $ac_n "checking "for msg_accrights in struct msghdr"""... $ac_c" 1>&6
-echo "configure:5283: checking "for msg_accrights in struct msghdr"" >&5
+echo "configure:5284: 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 5288 "configure"
+#line 5289 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/socket.h>
@@ -5292,7 +5293,7 @@
struct msghdr hdr; hdr.msg_accrights=0
; return 0; }
EOF
-if { (eval echo configure:5296: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5297: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_msg_accrights="yes"
else
@@ -5315,12 +5316,12 @@
echo $ac_n "checking "whether we need to define __i386__"""... $ac_c" 1>&6
-echo "configure:5319: checking "whether we need to define __i386__"" >&5
+echo "configure:5320: 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 5324 "configure"
+#line 5325 "configure"
#include "confdefs.h"
#if (defined(i386) || defined(__i386)) && !defined(__i386__)
yes
diff --git a/configure.in b/configure.in
index d61acfb..287cff5 100644
--- a/configure.in
+++ b/configure.in
@@ -487,8 +487,9 @@
rfork \
sendmsg \
sigaltstack \
+ strcasecmp \
strerror \
- stricmp \
+ strncasecmp \
tcgetattr \
timegm \
usleep \
diff --git a/include/config.h.in b/include/config.h.in
index 04082d9..0108554 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -160,11 +160,14 @@
/* Define if you have the sigaltstack function. */
#undef HAVE_SIGALTSTACK
+/* Define if you have the strcasecmp function. */
+#undef HAVE_STRCASECMP
+
/* Define if you have the strerror function. */
#undef HAVE_STRERROR
-/* Define if you have the stricmp function. */
-#undef HAVE_STRICMP
+/* Define if you have the strncasecmp function. */
+#undef HAVE_STRNCASECMP
/* Define if you have the tcgetattr function. */
#undef HAVE_TCGETATTR
diff --git a/include/wine/winestring.h b/include/wine/winestring.h
index 7a1ffe4..a8eca1b 100644
--- a/include/wine/winestring.h
+++ b/include/wine/winestring.h
@@ -3,14 +3,13 @@
#include "windef.h"
-INT16 WINAPI WideCharToLocal16(LPSTR,LPWSTR,INT16);
INT WINAPI WideCharToLocal(LPSTR,LPWSTR,INT);
-INT16 WINAPI LocalToWideChar16(LPWSTR,LPSTR,INT16);
INT WINAPI LocalToWideChar(LPWSTR,LPSTR,INT);
-INT WINAPI lstrncmpiA(LPCSTR,LPCSTR,INT);
LPWSTR WINAPI lstrcpyAtoW(LPWSTR,LPCSTR);
LPSTR WINAPI lstrcpyWtoA(LPSTR,LPCWSTR);
LPWSTR WINAPI lstrcpynAtoW(LPWSTR,LPCSTR,INT);
LPSTR WINAPI lstrcpynWtoA(LPSTR,LPCWSTR,INT);
+#define lstrncmpiA strncasecmp
+
#endif /* __WINE_WINE_WINESTRING_H */
diff --git a/memory/string.c b/memory/string.c
index 6ceeba4..a90621a 100644
--- a/memory/string.c
+++ b/memory/string.c
@@ -389,23 +389,6 @@
/***********************************************************************
- * lstrncmpi32A (Not a Windows API)
- */
-INT WINAPI lstrncmpiA( LPCSTR str1, LPCSTR str2, INT n )
-{
- INT res;
-
- TRACE("strncmpi %s and %s for %d chars\n",
- debugstr_an (str1, n), debugstr_an (str2, n), n);
- if (!n) return 0;
- while ((--n > 0) && *str1)
- if ( (res = toupper(*str1++) - toupper(*str2++)) ) return res;
-
- return toupper(*str1) - toupper(*str2);
-}
-
-
-/***********************************************************************
* lstrcpyAtoW (Not a Windows API)
*/
LPWSTR WINAPI lstrcpyAtoW( LPWSTR dst, LPCSTR src )
diff --git a/misc/port.c b/misc/port.c
index 9d0a0aa..fb07e0e 100644
--- a/misc/port.c
+++ b/misc/port.c
@@ -6,6 +6,7 @@
#include "config.h"
+#include <ctype.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
@@ -104,6 +105,25 @@
#endif /* !HAVE_CLONE && __linux__ */
+#ifndef HAVE_STRCASECMP
+int strcasecmp( const char *str1, const char *str2 )
+{
+ while (*str1 && toupper(*str1) == toupper(*str2)) { str1++; str2++; }
+ return toupper(*str1) - toupper(*str2);
+}
+#endif /* HAVE_STRCASECMP */
+
+#ifndef HAVE_STRNCASECMP
+int strncasecmp( const char *str1, const char *str2, size_t n )
+{
+ int res;
+ if (!n) return 0;
+ while ((--n > 0) && *str1)
+ if ((res = toupper(*str1++) - toupper(*str2++))) return res;
+ return toupper(*str1) - toupper(*str2);
+}
+#endif /* HAVE_STRNCASECMP */
+
/**
* It looks like the openpty that comes with glibc in RedHat 5.0
* is buggy (second call returns what looks like a dup of 0 and 1