Test for ssize_t. Needed for portability to mingw32.
authorBruno Haible <bruno@clisp.org>
Wed, 25 Jun 2003 09:20:53 +0000 (09:20 +0000)
committerBruno Haible <bruno@clisp.org>
Wed, 25 Jun 2003 09:20:53 +0000 (09:20 +0000)
ChangeLog
m4/safe-read.m4
m4/ssize_t.m4 [new file with mode: 0644]
m4/xreadlink.m4
modules/safe-read
modules/xreadlink

index 1270e04..4c14bfb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-06-22  Bruno Haible  <bruno@clisp.org>
+
+       * modules/safe-read: Add m4/ssize_t.m4.
+       * modules/xreadlink: Add m4/ssize_t.m4.
+
 2003-06-11  Simon Josefsson  <jas@extundo.com>
 
        * modules/sysexits: New file.
index 8738634..deb01bc 100644 (file)
@@ -1,5 +1,5 @@
-# safe-read.m4 serial 1
-dnl Copyright (C) 2002 Free Software Foundation, Inc.
+# safe-read.m4 serial 2
+dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
 dnl This file is free software, distributed under the terms of the GNU
 dnl General Public License.  As a special exception to the GNU General
 dnl Public License, this file may be distributed as part of a program
@@ -14,5 +14,6 @@ AC_DEFUN([gl_SAFE_READ],
 # Prerequisites of lib/safe-read.c.
 AC_DEFUN([gl_PREREQ_SAFE_READ],
 [
+  AC_REQUIRE([gt_TYPE_SSIZE_T])
   AC_CHECK_HEADERS_ONCE(unistd.h)
 ])
diff --git a/m4/ssize_t.m4 b/m4/ssize_t.m4
new file mode 100644 (file)
index 0000000..708126b
--- /dev/null
@@ -0,0 +1,26 @@
+# ssize_t.m4 serial 2 (gettext-0.12.2)
+dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License.  As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+dnl From Bruno Haible.
+dnl Test whether ssize_t is defined.
+
+AC_DEFUN([gt_TYPE_SSIZE_T],
+[
+  AC_CHECK_HEADERS_ONCE(unistd.h)
+  AC_CACHE_CHECK([for ssize_t], gt_cv_ssize_t,
+    [AC_TRY_COMPILE([
+#include <sys/types.h>
+#if HAVE_UNISTD_H
+#include <unistd.h>
+#endif], [int x = sizeof (ssize_t *) + sizeof (ssize_t);],
+       gt_cv_ssize_t=yes, gt_cv_ssize_t=no)])
+  if test $gt_cv_ssize_t = no; then
+    AC_DEFINE(ssize_t, int,
+              [Define as a signed type of the same size as size_t.])
+  fi
+])
index ca3bcef..25d04bb 100644 (file)
@@ -1,4 +1,4 @@
-# xreadlink.m4 serial 2
+# xreadlink.m4 serial 3
 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
 dnl This file is free software, distributed under the terms of the GNU
 dnl General Public License.  As a special exception to the GNU General
@@ -9,5 +9,6 @@ dnl the same distribution terms as the rest of that program.
 AC_DEFUN([gl_XREADLINK],
 [
   dnl Prerequisites of lib/xreadlink.c.
+  AC_REQUIRE([gt_TYPE_SSIZE_T])
   AC_CHECK_HEADERS_ONCE(stdlib.h sys/types.h unistd.h)
 ])
index 7211818..d57fd8e 100644 (file)
@@ -5,6 +5,7 @@ Files:
 lib/safe-read.h
 lib/safe-read.c
 m4/safe-read.m4
+m4/ssize_t.m4
 
 Depends-on:
 
index d3b825b..0d0e08e 100644 (file)
@@ -5,6 +5,7 @@ Files:
 lib/xreadlink.h
 lib/xreadlink.c
 m4/xreadlink.m4
+m4/ssize_t.m4
 
 Depends-on:
 xalloc