changeset 7982:6b61aba76343

Enforce ordering constraints between gl_HEADER_STRING_H_DEFAULTS and the statements that assign non-default values.
author Bruno Haible <bruno@clisp.org>
date Sat, 27 Jan 2007 14:43:17 +0000
parents 41421349e26b
children db3170662582
files ChangeLog m4/memmem.m4 m4/mempcpy.m4 m4/memrchr.m4 m4/stpcpy.m4 m4/stpncpy.m4 m4/strcase.m4 m4/strcasestr.m4 m4/strchrnul.m4 m4/strdup.m4 m4/string_h.m4 m4/strndup.m4 m4/strnlen.m4 m4/strpbrk.m4 m4/strsep.m4 m4/strstr.m4 m4/strtok_r.m4
diffstat 17 files changed, 61 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,24 @@
+2007-01-27  Bruno Haible  <bruno@clisp.org>
+
+	* m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
+	from gl_HEADER_STRING_H_BODY.
+	(gl_HEADER_STRING_H_BODY): Require it.
+	* m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
+	* m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
+	* m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
+	* m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
+	* m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
+	* m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
+	* m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
+	* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
+	* m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
+	* m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
+	* m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
+	* m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
+	* m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
+	* m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
+	* m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
+
 2007-01-27  Bruno Haible  <bruno@clisp.org>
 
 	* gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
--- a/m4/memmem.m4
+++ b/m4/memmem.m4
@@ -1,4 +1,4 @@
-# memmem.m4 serial 3
+# memmem.m4 serial 4
 dnl Copyright (C) 2002, 2003, 2004, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare memmem().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(memmem)
   AC_CHECK_DECLS_ONCE(memmem)
   if test $ac_cv_have_decl_memmem = no; then
--- a/m4/mempcpy.m4
+++ b/m4/mempcpy.m4
@@ -1,4 +1,4 @@
-# mempcpy.m4 serial 5
+# mempcpy.m4 serial 6
 dnl Copyright (C) 2003, 2004, 2006, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -6,10 +6,10 @@
 
 AC_DEFUN([gl_FUNC_MEMPCPY],
 [
-
   dnl Persuade glibc <string.h> to declare mempcpy().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(mempcpy)
   if test $ac_cv_func_mempcpy = no; then
     HAVE_MEMPCPY=0
--- a/m4/memrchr.m4
+++ b/m4/memrchr.m4
@@ -1,4 +1,4 @@
-# memrchr.m4 serial 6
+# memrchr.m4 serial 7
 dnl Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare memrchr().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_CHECK_DECLS_ONCE([memrchr])
   if test $ac_cv_have_decl_memrchr = no; then
     HAVE_DECL_MEMRCHR=0
--- a/m4/stpcpy.m4
+++ b/m4/stpcpy.m4
@@ -1,4 +1,4 @@
-# stpcpy.m4 serial 2
+# stpcpy.m4 serial 3
 dnl Copyright (C) 2002, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare stpcpy().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(stpcpy)
   if test $ac_cv_func_stpcpy = no; then
     HAVE_STPCPY=0
--- a/m4/stpncpy.m4
+++ b/m4/stpncpy.m4
@@ -1,4 +1,4 @@
-# stpncpy.m4 serial 5
+# stpncpy.m4 serial 6
 dnl Copyright (C) 2002-2003, 2005-2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,8 @@
   dnl Persuade glibc <string.h> to declare stpncpy().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
+
   dnl Both glibc and AIX (4.3.3, 5.1) have an stpncpy() function
   dnl declared in <string.h>. Its side effects are the same as those
   dnl of strncpy():
--- a/m4/strcase.m4
+++ b/m4/strcase.m4
@@ -1,4 +1,4 @@
-# strcase.m4 serial 5
+# strcase.m4 serial 6
 dnl Copyright (C) 2002, 2005-2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -12,15 +12,17 @@
 
 AC_DEFUN([gl_FUNC_STRCASECMP],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   dnl No known system has a strcasecmp() function that works correctly in
   dnl multibyte locales. Therefore we use our version always.
   AC_LIBOBJ(strcasecmp)
+  REPLACE_STRCASECMP=1
   gl_PREREQ_STRCASECMP
-  REPLACE_STRCASECMP=1
 ])
 
 AC_DEFUN([gl_FUNC_STRNCASECMP],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(strncasecmp)
   if test $ac_cv_func_strncasecmp = no; then
     gl_PREREQ_STRNCASECMP
--- a/m4/strcasestr.m4
+++ b/m4/strcasestr.m4
@@ -1,4 +1,4 @@
-# strcasestr.m4 serial 3
+# strcasestr.m4 serial 4
 dnl Copyright (C) 2005, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -6,6 +6,7 @@
 
 AC_DEFUN([gl_FUNC_STRCASESTR],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   dnl No known system has a strcasestr() function that works correctly in
   dnl multibyte locales. Therefore we use our version always.
   AC_LIBOBJ(strcasestr)
--- a/m4/strchrnul.m4
+++ b/m4/strchrnul.m4
@@ -1,4 +1,4 @@
-# strchrnul.m4 serial 4
+# strchrnul.m4 serial 5
 dnl Copyright (C) 2003, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare strchrnul().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(strchrnul)
   if test $ac_cv_func_strchrnul = no; then
     HAVE_STRCHRNUL=0
--- a/m4/strdup.m4
+++ b/m4/strdup.m4
@@ -1,4 +1,4 @@
-# strdup.m4 serial 8
+# strdup.m4 serial 9
 
 dnl Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software
 dnl Foundation, Inc.
@@ -9,6 +9,7 @@
 
 AC_DEFUN([gl_FUNC_STRDUP],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(strdup)
   AC_CHECK_DECLS_ONCE(strdup)
   if test $ac_cv_have_decl_strdup = no; then
--- a/m4/string_h.m4
+++ b/m4/string_h.m4
@@ -17,10 +17,14 @@
 AC_DEFUN([gl_HEADER_STRING_H_BODY],
 [
   AC_REQUIRE([AC_C_RESTRICT])
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   gl_ABSOLUTE_HEADER([string.h])
   ABSOLUTE_STRING_H=\"$gl_cv_absolute_string_h\"
   AC_SUBST([ABSOLUTE_STRING_H])
+])
 
+AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
+[
   dnl Assume proper GNU behavior unless another module says otherwise.
   HAVE_DECL_MEMMEM=1;		AC_SUBST([HAVE_DECL_MEMMEM])
   HAVE_MEMPCPY=1;		AC_SUBST([HAVE_MEMPCPY])
--- a/m4/strndup.m4
+++ b/m4/strndup.m4
@@ -1,4 +1,4 @@
-# strndup.m4 serial 12
+# strndup.m4 serial 13
 dnl Copyright (C) 2002-2003, 2005-2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare strndup().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_CHECK_DECLS_ONCE([strndup])
   if test $ac_cv_have_decl_strndup = no; then
     HAVE_DECL_STRNDUP=0
--- a/m4/strnlen.m4
+++ b/m4/strnlen.m4
@@ -1,5 +1,5 @@
-# strnlen.m4 serial 7
-dnl Copyright (C) 2002-2003, 2005, 2006, 2007 Free Software Foundation, Inc.
+# strnlen.m4 serial 8
+dnl Copyright (C) 2002-2003, 2005-2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare strnlen().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_CHECK_DECLS_ONCE([strnlen])
   if test $ac_cv_have_decl_strnlen = no; then
     HAVE_DECL_STRNLEN=0
--- a/m4/strpbrk.m4
+++ b/m4/strpbrk.m4
@@ -1,4 +1,4 @@
-# strpbrk.m4 serial 3
+# strpbrk.m4 serial 4
 dnl Copyright (C) 2002-2003, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -6,6 +6,7 @@
 
 AC_DEFUN([gl_FUNC_STRPBRK],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(strpbrk)
   if test $ac_cv_func_strpbrk = no; then
     HAVE_STRPBRK=0
--- a/m4/strsep.m4
+++ b/m4/strsep.m4
@@ -1,4 +1,4 @@
-# strsep.m4 serial 4
+# strsep.m4 serial 5
 dnl Copyright (C) 2002, 2003, 2004, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -9,6 +9,7 @@
   dnl Persuade glibc <string.h> to declare strsep().
   AC_REQUIRE([AC_GNU_SOURCE])
 
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(strsep)
   if test $ac_cv_func_strsep = no; then
     HAVE_STRSEP=0
--- a/m4/strstr.m4
+++ b/m4/strstr.m4
@@ -1,16 +1,17 @@
-# strstr.m4 serial 5
-dnl Copyright (C) 2002-2003, 2005 Free Software Foundation, Inc.
+# strstr.m4 serial 6
+dnl Copyright (C) 2002-2003, 2005, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 
 AC_DEFUN([gl_FUNC_STRSTR],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   dnl No known system has a strstr() function that works correctly in
   dnl multibyte locales. Therefore we use our version always.
   AC_LIBOBJ(strstr)
+  REPLACE_STRSTR=1
   gl_PREREQ_STRSTR
-  REPLACE_STRSTR=1
 ])
 
 # Prerequisites of lib/strstr.c.
--- a/m4/strtok_r.m4
+++ b/m4/strtok_r.m4
@@ -1,4 +1,4 @@
-# strtok_r.m4 serial 4
+# strtok_r.m4 serial 5
 dnl Copyright (C) 2002, 2003, 2004, 2007 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -6,6 +6,7 @@
 
 AC_DEFUN([gl_FUNC_STRTOK_R],
 [
+  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REPLACE_FUNCS(strtok_r)
   AC_CHECK_DECLS_ONCE(strtok_r)
   if test $ac_cv_have_decl_strtok_r = no; then