annotate m4/string_h.m4 @ 8057:d5ba49b9b586

* m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage bug. * modules/string (Makefile.am): Remove redundant replacement. * modules/regex (Depends-on): Add mempcpy.
author Eric Blake <ebb9@byu.net>
date Thu, 01 Feb 2007 05:01:17 +0000
parents 273c47dfe264
children c8815c37b48c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7944
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
1 # Configure a GNU-like replacement for <string.h>.
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
2
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
3 # Copyright (C) 2007 Free Software Foundation, Inc.
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
4 # This file is free software; the Free Software Foundation
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
5 # gives unlimited permission to copy and/or distribute it,
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
6 # with or without modifications, as long as this notice is preserved.
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
7
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
8 # Written by Paul Eggert.
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
9
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
10 AC_DEFUN([gl_HEADER_STRING_H],
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
11 [
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
12 dnl Use AC_REQUIRE here, so that the default behavior below is expanded
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
13 dnl once only, before all statements that occur in other macros.
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
14 AC_REQUIRE([gl_HEADER_STRING_H_BODY])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
15 ])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
16
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
17 AC_DEFUN([gl_HEADER_STRING_H_BODY],
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
18 [
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
19 AC_REQUIRE([AC_C_RESTRICT])
7982
6b61aba76343 Enforce ordering constraints between gl_HEADER_STRING_H_DEFAULTS and the
Bruno Haible <bruno@clisp.org>
parents: 7980
diff changeset
20 AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
8056
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
21 AC_REQUIRE([gl_STRING_MODULE_INDICATOR_DEFAULTS])
7944
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
22 gl_ABSOLUTE_HEADER([string.h])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
23 ABSOLUTE_STRING_H=\"$gl_cv_absolute_string_h\"
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
24 AC_SUBST([ABSOLUTE_STRING_H])
7982
6b61aba76343 Enforce ordering constraints between gl_HEADER_STRING_H_DEFAULTS and the
Bruno Haible <bruno@clisp.org>
parents: 7980
diff changeset
25 ])
7944
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
26
7982
6b61aba76343 Enforce ordering constraints between gl_HEADER_STRING_H_DEFAULTS and the
Bruno Haible <bruno@clisp.org>
parents: 7980
diff changeset
27 AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
6b61aba76343 Enforce ordering constraints between gl_HEADER_STRING_H_DEFAULTS and the
Bruno Haible <bruno@clisp.org>
parents: 7980
diff changeset
28 [
7944
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
29 dnl Assume proper GNU behavior unless another module says otherwise.
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
30 HAVE_DECL_MEMMEM=1; AC_SUBST([HAVE_DECL_MEMMEM])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
31 HAVE_MEMPCPY=1; AC_SUBST([HAVE_MEMPCPY])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
32 HAVE_DECL_MEMRCHR=1; AC_SUBST([HAVE_DECL_MEMRCHR])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
33 HAVE_STPCPY=1; AC_SUBST([HAVE_STPCPY])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
34 HAVE_STPNCPY=1; AC_SUBST([HAVE_STPNCPY])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
35 HAVE_DECL_STRNCASECMP=1; AC_SUBST([HAVE_DECL_STRNCASECMP])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
36 HAVE_STRCHRNUL=1; AC_SUBST([HAVE_STRCHRNUL])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
37 HAVE_DECL_STRDUP=1; AC_SUBST([HAVE_DECL_STRDUP])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
38 HAVE_STRNDUP=1; AC_SUBST([HAVE_STRNDUP])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
39 HAVE_DECL_STRNDUP=1; AC_SUBST([HAVE_DECL_STRNDUP])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
40 HAVE_DECL_STRNLEN=1; AC_SUBST([HAVE_DECL_STRNLEN])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
41 HAVE_STRPBRK=1; AC_SUBST([HAVE_STRPBRK])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
42 HAVE_STRSEP=1; AC_SUBST([HAVE_STRSEP])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
43 HAVE_DECL_STRTOK_R=1; AC_SUBST([HAVE_DECL_STRTOK_R])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
44 REPLACE_STRCASECMP=0; AC_SUBST([REPLACE_STRCASECMP])
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
45 REPLACE_STRSTR=0; AC_SUBST([REPLACE_STRSTR])
7980
89b6dfd07076 Declare strcasestr() in the <string.h> replacement, rather than in
Bruno Haible <bruno@clisp.org>
parents: 7944
diff changeset
46 REPLACE_STRCASESTR=0; AC_SUBST([REPLACE_STRCASESTR])
7944
a1d177cd9523 * doc/gnulib-tool.texi (Initial import): Update to match current
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
47 ])
8056
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
48
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
49 AC_DEFUN([gl_STRING_MODULE_INDICATOR],
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
50 [
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
51 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
52 AC_REQUIRE([gl_STRING_MODULE_INDICATOR_DEFAULTS])
8057
d5ba49b9b586 * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
Eric Blake <ebb9@byu.net>
parents: 8056
diff changeset
53 GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1
8056
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
54 ])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
55
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
56 AC_DEFUN([gl_STRING_MODULE_INDICATOR_DEFAULTS],
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
57 [
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
58 GNULIB_MEMMEM=0; AC_SUBST([GNULIB_MEMMEM])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
59 GNULIB_MEMPCPY=0; AC_SUBST([GNULIB_MEMPCPY])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
60 GNULIB_MEMRCHR=0; AC_SUBST([GNULIB_MEMRCHR])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
61 GNULIB_STPCPY=0; AC_SUBST([GNULIB_STPCPY])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
62 GNULIB_STPNCPY=0; AC_SUBST([GNULIB_STPNCPY])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
63 GNULIB_STRCASE=0; AC_SUBST([GNULIB_STRCASE])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
64 GNULIB_STRCHRNUL=0; AC_SUBST([GNULIB_STRCHRNUL])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
65 GNULIB_STRDUP=0; AC_SUBST([GNULIB_STRDUP])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
66 GNULIB_STRNDUP=0; AC_SUBST([GNULIB_STRNDUP])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
67 GNULIB_STRNLEN=0; AC_SUBST([GNULIB_STRNLEN])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
68 GNULIB_STRPBRK=0; AC_SUBST([GNULIB_STRPBRK])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
69 GNULIB_STRSEP=0; AC_SUBST([GNULIB_STRSEP])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
70 GNULIB_STRSTR=0; AC_SUBST([GNULIB_STRSTR])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
71 GNULIB_STRCASESTR=0; AC_SUBST([GNULIB_STRCASESTR])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
72 GNULIB_STRTOK_R=0; AC_SUBST([GNULIB_STRTOK_R])
273c47dfe264 Enforce the use of gnulib modules for unportable <string.h> functions.
Bruno Haible <bruno@clisp.org>
parents: 7982
diff changeset
73 ])