summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2010-04-25 12:27:21 +0200
committerBruno Haible <bruno@clisp.org>2010-04-25 12:27:21 +0200
commitf671e12d63b4eb6dcbef44310209d63d174ca94b (patch)
tree2a54f7ea0ae0cf3515a6a4cc5d4df2d64c385a22
parent7b0679ea71b7fb823e0d42ad27d1b106ca65fbcc (diff)
downloadgnulib-f671e12d63b4eb6dcbef44310209d63d174ca94b.tar.gz
strnlen: Fix a C++ test error on MacOS X and Solaris.
-rw-r--r--ChangeLog8
-rw-r--r--m4/strnlen.m418
2 files changed, 17 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index e3a6fc9f39..b115acd43e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2010-04-25 Bruno Haible <bruno@clisp.org>
+
+ strnlen: Fix a C++ test error on MacOS X and Solaris.
+ * m4/strnlen.m4 (gl_FUNC_STRNLEN): Don't set REPLACE_STRNLEN to 1 if
+ the function is not declared.
+ Reported by Jarno Rajahalme <jarno.rajahalme@nsn.com> and
+ Simon Josefsson.
+
2010-04-24 Bruno Haible <bruno@clisp.org>
Avoid a gcc warning.
diff --git a/m4/strnlen.m4 b/m4/strnlen.m4
index fabce50bad..52bb838f96 100644
--- a/m4/strnlen.m4
+++ b/m4/strnlen.m4
@@ -1,4 +1,4 @@
-# strnlen.m4 serial 11
+# strnlen.m4 serial 12
dnl Copyright (C) 2002-2003, 2005-2007, 2009-2010 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
@@ -15,15 +15,15 @@ AC_DEFUN([gl_FUNC_STRNLEN],
AC_CHECK_DECLS_ONCE([strnlen])
if test $ac_cv_have_decl_strnlen = no; then
HAVE_DECL_STRNLEN=0
+ else
+ AC_FUNC_STRNLEN
+ dnl Note: AC_FUNC_STRNLEN does AC_LIBOBJ([strnlen]).
+ if test $ac_cv_func_strnlen_working = no; then
+ REPLACE_STRNLEN=1
+ fi
fi
-
- AC_FUNC_STRNLEN
- if test $ac_cv_func_strnlen_working = no; then
- REPLACE_STRNLEN=1
- # This is necessary because automake-1.6.1 doesn't understand
- # that the above use of AC_FUNC_STRNLEN means we may have to use
- # lib/strnlen.c.
- #AC_LIBOBJ([strnlen])
+ if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then
+ AC_LIBOBJ([strnlen])
gl_PREREQ_STRNLEN
fi
])