configure.in: Clean up checks for dirent.d_reclen, ssize_t,
	llseek, lseek64, sockaddr.sa_len and make the lseek checks
	immune to compiler warnings, so that they can be compiled
	with Intel C++ 8.1.

Patch from: Matthias Andree <matthias.andree@gmx.de>

diff --git a/configure b/configure
index f6255df..1e786e6 100644
--- a/configure
+++ b/configure
@@ -11216,9 +11216,9 @@
 done
 
 
-echo "$as_me:$LINENO: checking whether d_reclen declared in dirent" >&5
-echo $ECHO_N "checking whether d_reclen declared in dirent... $ECHO_C" >&6
-if test "${e2fsprogs_cv_have_d_reclen_dirent+set}" = set; then
+echo "$as_me:$LINENO: checking for struct dirent.d_reclen" >&5
+echo $ECHO_N "checking for struct dirent.d_reclen... $ECHO_C" >&6
+if test "${ac_cv_member_struct_dirent_d_reclen+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
@@ -11228,10 +11228,13 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include <dirent.h>
+
 int
 main ()
 {
-struct dirent de; de.d_reclen = 0;
+static struct dirent ac_aggr;
+if (ac_aggr.d_reclen)
+return 0;
   ;
   return 0;
 }
@@ -11257,27 +11260,73 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  e2fsprogs_cv_have_d_reclen_dirent=yes
+  ac_cv_member_struct_dirent_d_reclen=yes
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-e2fsprogs_cv_have_d_reclen_dirent=no
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <dirent.h>
+
+int
+main ()
+{
+static struct dirent ac_aggr;
+if (sizeof ac_aggr.d_reclen)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+	 { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_member_struct_dirent_d_reclen=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_member_struct_dirent_d_reclen=no
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$as_me:$LINENO: result: $e2fsprogs_cv_have_d_reclen_dirent" >&5
-echo "${ECHO_T}$e2fsprogs_cv_have_d_reclen_dirent" >&6
-if test "$e2fsprogs_cv_have_d_reclen_dirent" = yes; then
-   cat >>confdefs.h <<\_ACEOF
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_member_struct_dirent_d_reclen" >&5
+echo "${ECHO_T}$ac_cv_member_struct_dirent_d_reclen" >&6
+if test $ac_cv_member_struct_dirent_d_reclen = yes; then
+  cat >>confdefs.h <<\_ACEOF
 #define HAVE_RECLEN_DIRENT 1
 _ACEOF
 
 fi
-echo "$as_me:$LINENO: checking whether ssize_t declared" >&5
-echo $ECHO_N "checking whether ssize_t declared... $ECHO_C" >&6
-if test "${e2fsprogs_cv_have_ssize_t+set}" = set; then
+
+echo "$as_me:$LINENO: checking for ssize_t" >&5
+echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6
+if test "${ac_cv_type_ssize_t+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
@@ -11287,10 +11336,14 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include <sys/types.h>
+
 int
 main ()
 {
-ssize_t a = 0;
+if ((ssize_t *) 0)
+  return 0;
+if (sizeof (ssize_t))
+  return 0;
   ;
   return 0;
 }
@@ -11316,27 +11369,27 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  e2fsprogs_cv_have_ssize_t=yes
+  ac_cv_type_ssize_t=yes
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-e2fsprogs_cv_have_ssize_t=no
+ac_cv_type_ssize_t=no
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$as_me:$LINENO: result: $e2fsprogs_cv_have_ssize_t" >&5
-echo "${ECHO_T}$e2fsprogs_cv_have_ssize_t" >&6
-if test "$e2fsprogs_cv_have_ssize_t" = yes; then
-   cat >>confdefs.h <<\_ACEOF
+echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5
+echo "${ECHO_T}$ac_cv_type_ssize_t" >&6
+if test $ac_cv_type_ssize_t = yes; then
+  cat >>confdefs.h <<\_ACEOF
 #define HAVE_TYPE_SSIZE_T 1
 _ACEOF
 
 fi
-echo "$as_me:$LINENO: checking whether llseek declared in unistd.h" >&5
-echo $ECHO_N "checking whether llseek declared in unistd.h... $ECHO_C" >&6
-if test "${e2fsprogs_cv_have_llseek_prototype+set}" = set; then
+
+echo "$as_me:$LINENO: checking whether llseek is declared" >&5
+echo $ECHO_N "checking whether llseek is declared... $ECHO_C" >&6
+if test "${ac_cv_have_decl_llseek+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
@@ -11346,10 +11399,14 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include <unistd.h>
+
 int
 main ()
 {
-extern int llseek(int);
+#ifndef llseek
+  char *p = (char *) llseek;
+#endif
+
   ;
   return 0;
 }
@@ -11375,27 +11432,27 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  e2fsprogs_cv_have_llseek_prototype=no
+  ac_cv_have_decl_llseek=yes
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-e2fsprogs_cv_have_llseek_prototype=yes
+ac_cv_have_decl_llseek=no
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$as_me:$LINENO: result: $e2fsprogs_cv_have_llseek_prototype" >&5
-echo "${ECHO_T}$e2fsprogs_cv_have_llseek_prototype" >&6
-if test "$e2fsprogs_cv_have_llseek_prototype" = yes; then
-   cat >>confdefs.h <<\_ACEOF
+echo "$as_me:$LINENO: result: $ac_cv_have_decl_llseek" >&5
+echo "${ECHO_T}$ac_cv_have_decl_llseek" >&6
+if test $ac_cv_have_decl_llseek = yes; then
+  cat >>confdefs.h <<\_ACEOF
 #define HAVE_LLSEEK_PROTOTYPE 1
 _ACEOF
 
 fi
-echo "$as_me:$LINENO: checking whether lseek64 declared in unistd.h" >&5
-echo $ECHO_N "checking whether lseek64 declared in unistd.h... $ECHO_C" >&6
-if test "${e2fsprogs_cv_have_lseek64_prototype+set}" = set; then
+
+echo "$as_me:$LINENO: checking whether lseek64 is declared" >&5
+echo $ECHO_N "checking whether lseek64 is declared... $ECHO_C" >&6
+if test "${ac_cv_have_decl_lseek64+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
@@ -11405,12 +11462,16 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #define _LARGEFILE_SOURCE
-#define _LARGEFILE64_SOURCE
-#include <unistd.h>
+		 #define _LARGEFILE64_SOURCE
+		 #include <unistd.h>
+
 int
 main ()
 {
-extern int lseek64(int);
+#ifndef lseek64
+  char *p = (char *) lseek64;
+#endif
+
   ;
   return 0;
 }
@@ -11436,24 +11497,24 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  e2fsprogs_cv_have_lseek64_prototype=no
+  ac_cv_have_decl_lseek64=yes
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-e2fsprogs_cv_have_lseek64_prototype=yes
+ac_cv_have_decl_lseek64=no
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$as_me:$LINENO: result: $e2fsprogs_cv_have_lseek64_prototype" >&5
-echo "${ECHO_T}$e2fsprogs_cv_have_lseek64_prototype" >&6
-if test "$e2fsprogs_cv_have_lseek64_prototype" = yes; then
-   cat >>confdefs.h <<\_ACEOF
+echo "$as_me:$LINENO: result: $ac_cv_have_decl_lseek64" >&5
+echo "${ECHO_T}$ac_cv_have_decl_lseek64" >&6
+if test $ac_cv_have_decl_lseek64 = yes; then
+  cat >>confdefs.h <<\_ACEOF
 #define HAVE_LSEEK64_PROTOTYPE 1
 _ACEOF
 
 fi
+
 if test "$cross_compiling" = yes -a "$ac_cv_sizeof_long" = ""; then
   # if cross-compiling, with no cached values, just assume something common.
   ac_cv_sizeof_short=2
@@ -13649,9 +13710,9 @@
 
   fi
 fi
-echo "$as_me:$LINENO: checking whether struct sockaddr contains sa_len" >&5
-echo $ECHO_N "checking whether struct sockaddr contains sa_len... $ECHO_C" >&6
-if test "${e2fsprogs_cv_sockaddr_sa_len+set}" = set; then
+echo "$as_me:$LINENO: checking for struct sockaddr.sa_len" >&5
+echo $ECHO_N "checking for struct sockaddr.sa_len... $ECHO_C" >&6
+if test "${ac_cv_member_struct_sockaddr_sa_len+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
@@ -13661,13 +13722,14 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 #include <sys/types.h>
-#include <sys/socket.h>
+	 #include <sys/socket.h>
 
 int
 main ()
 {
-struct sockaddr sa;
-sa.sa_len;
+static struct sockaddr ac_aggr;
+if (ac_aggr.sa_len)
+return 0;
   ;
   return 0;
 }
@@ -13693,19 +13755,65 @@
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  e2fsprogs_cv_sockaddr_sa_len=yes
+  ac_cv_member_struct_sockaddr_sa_len=yes
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-e2fsprogs_cv_sockaddr_sa_len=no
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <sys/types.h>
+	 #include <sys/socket.h>
+
+int
+main ()
+{
+static struct sockaddr ac_aggr;
+if (sizeof ac_aggr.sa_len)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+	 { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_member_struct_sockaddr_sa_len=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_member_struct_sockaddr_sa_len=no
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$as_me:$LINENO: result: $e2fsprogs_cv_sockaddr_sa_len" >&5
-echo "${ECHO_T}$e2fsprogs_cv_sockaddr_sa_len" >&6
-if test $e2fsprogs_cv_sockaddr_sa_len = yes; then
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_member_struct_sockaddr_sa_len" >&5
+echo "${ECHO_T}$ac_cv_member_struct_sockaddr_sa_len" >&6
+if test $ac_cv_member_struct_sockaddr_sa_len = yes; then
 
 cat >>confdefs.h <<_ACEOF
 #define HAVE_SA_LEN 1
@@ -13731,6 +13839,7 @@
 
 
 
+
 for ac_func in chflags getrusage llseek lseek64 open64 getmntinfo strtoull strcasecmp srandom fchown mallinfo fdatasync strnlen strptime sysconf pathconf posix_memalign memalign valloc
 do
 as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`