1Description: 2A GNU-like <string.h>. 3 4Files: 5lib/string.in.h 6m4/string_h.m4 7 8Depends-on: 9extensions 10extern-inline 11include_next 12snippet/arg-nonnull 13snippet/c++defs 14snippet/warn-on-use 15stddef 16 17configure.ac: 18gl_HEADER_STRING_H 19 20Makefile.am: 21BUILT_SOURCES += string.h 22 23# We need the following in order to create <string.h> when the system 24# doesn't have one that works with the given compiler. 25string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) 26 $(AM_V_GEN)rm -f $@-t $@ && \ 27 { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ 28 sed -e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|g' \ 29 -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ 30 -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ 31 -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ 32 -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \ 33 -e 's/@''GNULIB_FFSL''@/$(GNULIB_FFSL)/g' \ 34 -e 's/@''GNULIB_FFSLL''@/$(GNULIB_FFSLL)/g' \ 35 -e 's/@''GNULIB_MBSLEN''@/$(GNULIB_MBSLEN)/g' \ 36 -e 's/@''GNULIB_MBSNLEN''@/$(GNULIB_MBSNLEN)/g' \ 37 -e 's/@''GNULIB_MBSCHR''@/$(GNULIB_MBSCHR)/g' \ 38 -e 's/@''GNULIB_MBSRCHR''@/$(GNULIB_MBSRCHR)/g' \ 39 -e 's/@''GNULIB_MBSSTR''@/$(GNULIB_MBSSTR)/g' \ 40 -e 's/@''GNULIB_MBSCASECMP''@/$(GNULIB_MBSCASECMP)/g' \ 41 -e 's/@''GNULIB_MBSNCASECMP''@/$(GNULIB_MBSNCASECMP)/g' \ 42 -e 's/@''GNULIB_MBSPCASECMP''@/$(GNULIB_MBSPCASECMP)/g' \ 43 -e 's/@''GNULIB_MBSCASESTR''@/$(GNULIB_MBSCASESTR)/g' \ 44 -e 's/@''GNULIB_MBSCSPN''@/$(GNULIB_MBSCSPN)/g' \ 45 -e 's/@''GNULIB_MBSPBRK''@/$(GNULIB_MBSPBRK)/g' \ 46 -e 's/@''GNULIB_MBSSPN''@/$(GNULIB_MBSSPN)/g' \ 47 -e 's/@''GNULIB_MBSSEP''@/$(GNULIB_MBSSEP)/g' \ 48 -e 's/@''GNULIB_MBSTOK_R''@/$(GNULIB_MBSTOK_R)/g' \ 49 -e 's/@''GNULIB_MEMCHR''@/$(GNULIB_MEMCHR)/g' \ 50 -e 's/@''GNULIB_MEMMEM''@/$(GNULIB_MEMMEM)/g' \ 51 -e 's/@''GNULIB_MEMPCPY''@/$(GNULIB_MEMPCPY)/g' \ 52 -e 's/@''GNULIB_MEMRCHR''@/$(GNULIB_MEMRCHR)/g' \ 53 -e 's/@''GNULIB_RAWMEMCHR''@/$(GNULIB_RAWMEMCHR)/g' \ 54 -e 's/@''GNULIB_STPCPY''@/$(GNULIB_STPCPY)/g' \ 55 -e 's/@''GNULIB_STPNCPY''@/$(GNULIB_STPNCPY)/g' \ 56 -e 's/@''GNULIB_STRCHRNUL''@/$(GNULIB_STRCHRNUL)/g' \ 57 -e 's/@''GNULIB_STRDUP''@/$(GNULIB_STRDUP)/g' \ 58 -e 's/@''GNULIB_STRNCAT''@/$(GNULIB_STRNCAT)/g' \ 59 -e 's/@''GNULIB_STRNDUP''@/$(GNULIB_STRNDUP)/g' \ 60 -e 's/@''GNULIB_STRNLEN''@/$(GNULIB_STRNLEN)/g' \ 61 -e 's/@''GNULIB_STRPBRK''@/$(GNULIB_STRPBRK)/g' \ 62 -e 's/@''GNULIB_STRSEP''@/$(GNULIB_STRSEP)/g' \ 63 -e 's/@''GNULIB_STRSTR''@/$(GNULIB_STRSTR)/g' \ 64 -e 's/@''GNULIB_STRCASESTR''@/$(GNULIB_STRCASESTR)/g' \ 65 -e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \ 66 -e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \ 67 -e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \ 68 -e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \ 69 -e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \ 70 < $(srcdir)/string.in.h | \ 71 sed -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \ 72 -e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \ 73 -e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \ 74 -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \ 75 -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ 76 -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ 77 -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ 78 -e 's|@''HAVE_RAWMEMCHR''@|$(HAVE_RAWMEMCHR)|g' \ 79 -e 's|@''HAVE_STPCPY''@|$(HAVE_STPCPY)|g' \ 80 -e 's|@''HAVE_STPNCPY''@|$(HAVE_STPNCPY)|g' \ 81 -e 's|@''HAVE_STRCHRNUL''@|$(HAVE_STRCHRNUL)|g' \ 82 -e 's|@''HAVE_DECL_STRDUP''@|$(HAVE_DECL_STRDUP)|g' \ 83 -e 's|@''HAVE_DECL_STRNDUP''@|$(HAVE_DECL_STRNDUP)|g' \ 84 -e 's|@''HAVE_DECL_STRNLEN''@|$(HAVE_DECL_STRNLEN)|g' \ 85 -e 's|@''HAVE_STRPBRK''@|$(HAVE_STRPBRK)|g' \ 86 -e 's|@''HAVE_STRSEP''@|$(HAVE_STRSEP)|g' \ 87 -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \ 88 -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \ 89 -e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \ 90 -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \ 91 -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \ 92 -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ 93 -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ 94 -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ 95 -e 's|@''REPLACE_STRCASESTR''@|$(REPLACE_STRCASESTR)|g' \ 96 -e 's|@''REPLACE_STRCHRNUL''@|$(REPLACE_STRCHRNUL)|g' \ 97 -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ 98 -e 's|@''REPLACE_STRSTR''@|$(REPLACE_STRSTR)|g' \ 99 -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \ 100 -e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \ 101 -e 's|@''REPLACE_STRNCAT''@|$(REPLACE_STRNCAT)|g' \ 102 -e 's|@''REPLACE_STRNDUP''@|$(REPLACE_STRNDUP)|g' \ 103 -e 's|@''REPLACE_STRNLEN''@|$(REPLACE_STRNLEN)|g' \ 104 -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \ 105 -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \ 106 -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \ 107 -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ 108 -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ 109 -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ 110 < $(srcdir)/string.in.h; \ 111 } > $@-t && \ 112 mv $@-t $@ 113MOSTLYCLEANFILES += string.h string.h-t 114 115Include: 116<string.h> 117 118License: 119LGPLv2+ 120 121Maintainer: 122all 123