OLD | NEW |
| (Empty) |
1 # Configure a GNU-like replacement for <string.h>. | |
2 | |
3 # Copyright (C) 2007-2011 Free Software Foundation, Inc. | |
4 # This file is free software; the Free Software Foundation | |
5 # gives unlimited permission to copy and/or distribute it, | |
6 # with or without modifications, as long as this notice is preserved. | |
7 | |
8 # serial 17 | |
9 | |
10 # Written by Paul Eggert. | |
11 | |
12 AC_DEFUN([gl_HEADER_STRING_H], | |
13 [ | |
14 dnl Use AC_REQUIRE here, so that the default behavior below is expanded | |
15 dnl once only, before all statements that occur in other macros. | |
16 AC_REQUIRE([gl_HEADER_STRING_H_BODY]) | |
17 ]) | |
18 | |
19 AC_DEFUN([gl_HEADER_STRING_H_BODY], | |
20 [ | |
21 AC_REQUIRE([AC_C_RESTRICT]) | |
22 AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) | |
23 gl_CHECK_NEXT_HEADERS([string.h]) | |
24 | |
25 dnl Check for declarations of anything we want to poison if the | |
26 dnl corresponding gnulib module is not in use, and which is not | |
27 dnl guaranteed by C89. | |
28 gl_WARN_ON_USE_PREPARE([[#include <string.h> | |
29 ]], | |
30 [memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul strdup | |
31 strncat strndup strnlen strpbrk strsep strcasestr strtok_r strsignal | |
32 strverscmp]) | |
33 ]) | |
34 | |
35 AC_DEFUN([gl_STRING_MODULE_INDICATOR], | |
36 [ | |
37 dnl Use AC_REQUIRE here, so that the default settings are expanded once only. | |
38 AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) | |
39 gl_MODULE_INDICATOR_SET_VARIABLE([$1]) | |
40 dnl Define it also as a C macro, for the benefit of the unit tests. | |
41 gl_MODULE_INDICATOR_FOR_TESTS([$1]) | |
42 ]) | |
43 | |
44 AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS], | |
45 [ | |
46 GNULIB_MEMCHR=0; AC_SUBST([GNULIB_MEMCHR]) | |
47 GNULIB_MEMMEM=0; AC_SUBST([GNULIB_MEMMEM]) | |
48 GNULIB_MEMPCPY=0; AC_SUBST([GNULIB_MEMPCPY]) | |
49 GNULIB_MEMRCHR=0; AC_SUBST([GNULIB_MEMRCHR]) | |
50 GNULIB_RAWMEMCHR=0; AC_SUBST([GNULIB_RAWMEMCHR]) | |
51 GNULIB_STPCPY=0; AC_SUBST([GNULIB_STPCPY]) | |
52 GNULIB_STPNCPY=0; AC_SUBST([GNULIB_STPNCPY]) | |
53 GNULIB_STRCHRNUL=0; AC_SUBST([GNULIB_STRCHRNUL]) | |
54 GNULIB_STRDUP=0; AC_SUBST([GNULIB_STRDUP]) | |
55 GNULIB_STRNCAT=0; AC_SUBST([GNULIB_STRNCAT]) | |
56 GNULIB_STRNDUP=0; AC_SUBST([GNULIB_STRNDUP]) | |
57 GNULIB_STRNLEN=0; AC_SUBST([GNULIB_STRNLEN]) | |
58 GNULIB_STRPBRK=0; AC_SUBST([GNULIB_STRPBRK]) | |
59 GNULIB_STRSEP=0; AC_SUBST([GNULIB_STRSEP]) | |
60 GNULIB_STRSTR=0; AC_SUBST([GNULIB_STRSTR]) | |
61 GNULIB_STRCASESTR=0; AC_SUBST([GNULIB_STRCASESTR]) | |
62 GNULIB_STRTOK_R=0; AC_SUBST([GNULIB_STRTOK_R]) | |
63 GNULIB_MBSLEN=0; AC_SUBST([GNULIB_MBSLEN]) | |
64 GNULIB_MBSNLEN=0; AC_SUBST([GNULIB_MBSNLEN]) | |
65 GNULIB_MBSCHR=0; AC_SUBST([GNULIB_MBSCHR]) | |
66 GNULIB_MBSRCHR=0; AC_SUBST([GNULIB_MBSRCHR]) | |
67 GNULIB_MBSSTR=0; AC_SUBST([GNULIB_MBSSTR]) | |
68 GNULIB_MBSCASECMP=0; AC_SUBST([GNULIB_MBSCASECMP]) | |
69 GNULIB_MBSNCASECMP=0; AC_SUBST([GNULIB_MBSNCASECMP]) | |
70 GNULIB_MBSPCASECMP=0; AC_SUBST([GNULIB_MBSPCASECMP]) | |
71 GNULIB_MBSCASESTR=0; AC_SUBST([GNULIB_MBSCASESTR]) | |
72 GNULIB_MBSCSPN=0; AC_SUBST([GNULIB_MBSCSPN]) | |
73 GNULIB_MBSPBRK=0; AC_SUBST([GNULIB_MBSPBRK]) | |
74 GNULIB_MBSSPN=0; AC_SUBST([GNULIB_MBSSPN]) | |
75 GNULIB_MBSSEP=0; AC_SUBST([GNULIB_MBSSEP]) | |
76 GNULIB_MBSTOK_R=0; AC_SUBST([GNULIB_MBSTOK_R]) | |
77 GNULIB_STRERROR=0; AC_SUBST([GNULIB_STRERROR]) | |
78 GNULIB_STRSIGNAL=0; AC_SUBST([GNULIB_STRSIGNAL]) | |
79 GNULIB_STRVERSCMP=0; AC_SUBST([GNULIB_STRVERSCMP]) | |
80 HAVE_MBSLEN=0; AC_SUBST([HAVE_MBSLEN]) | |
81 dnl Assume proper GNU behavior unless another module says otherwise. | |
82 HAVE_MEMCHR=1; AC_SUBST([HAVE_MEMCHR]) | |
83 HAVE_DECL_MEMMEM=1; AC_SUBST([HAVE_DECL_MEMMEM]) | |
84 HAVE_MEMPCPY=1; AC_SUBST([HAVE_MEMPCPY]) | |
85 HAVE_DECL_MEMRCHR=1; AC_SUBST([HAVE_DECL_MEMRCHR]) | |
86 HAVE_RAWMEMCHR=1; AC_SUBST([HAVE_RAWMEMCHR]) | |
87 HAVE_STPCPY=1; AC_SUBST([HAVE_STPCPY]) | |
88 HAVE_STPNCPY=1; AC_SUBST([HAVE_STPNCPY]) | |
89 HAVE_STRCHRNUL=1; AC_SUBST([HAVE_STRCHRNUL]) | |
90 HAVE_DECL_STRDUP=1; AC_SUBST([HAVE_DECL_STRDUP]) | |
91 HAVE_DECL_STRNDUP=1; AC_SUBST([HAVE_DECL_STRNDUP]) | |
92 HAVE_DECL_STRNLEN=1; AC_SUBST([HAVE_DECL_STRNLEN]) | |
93 HAVE_STRPBRK=1; AC_SUBST([HAVE_STRPBRK]) | |
94 HAVE_STRSEP=1; AC_SUBST([HAVE_STRSEP]) | |
95 HAVE_STRCASESTR=1; AC_SUBST([HAVE_STRCASESTR]) | |
96 HAVE_DECL_STRTOK_R=1; AC_SUBST([HAVE_DECL_STRTOK_R]) | |
97 HAVE_DECL_STRSIGNAL=1; AC_SUBST([HAVE_DECL_STRSIGNAL]) | |
98 HAVE_STRVERSCMP=1; AC_SUBST([HAVE_STRVERSCMP]) | |
99 REPLACE_MEMCHR=0; AC_SUBST([REPLACE_MEMCHR]) | |
100 REPLACE_MEMMEM=0; AC_SUBST([REPLACE_MEMMEM]) | |
101 REPLACE_STPNCPY=0; AC_SUBST([REPLACE_STPNCPY]) | |
102 REPLACE_STRDUP=0; AC_SUBST([REPLACE_STRDUP]) | |
103 REPLACE_STRSTR=0; AC_SUBST([REPLACE_STRSTR]) | |
104 REPLACE_STRCASESTR=0; AC_SUBST([REPLACE_STRCASESTR]) | |
105 REPLACE_STRERROR=0; AC_SUBST([REPLACE_STRERROR]) | |
106 REPLACE_STRNCAT=0; AC_SUBST([REPLACE_STRNCAT]) | |
107 REPLACE_STRNDUP=0; AC_SUBST([REPLACE_STRNDUP]) | |
108 REPLACE_STRNLEN=0; AC_SUBST([REPLACE_STRNLEN]) | |
109 REPLACE_STRSIGNAL=0; AC_SUBST([REPLACE_STRSIGNAL]) | |
110 REPLACE_STRTOK_R=0; AC_SUBST([REPLACE_STRTOK_R]) | |
111 UNDEFINE_STRTOK_R=0; AC_SUBST([UNDEFINE_STRTOK_R]) | |
112 ]) | |
OLD | NEW |