Branch
Hash :
b2bf05b1
Author :
Date :
2025-02-16T22:32:33
strncasecmp_l: New module. * lib/strings.in.h (strncasecmp_l): New declaration. * lib/strncasecmp_l.c: New file, based on lib/strncasecmp.c. * m4/strncasecmp_l.m4: New file. * m4/strings_h.m4 (gl_STRINGS_H): Test for strncasecmp_l. (gl_STRINGS_H_REQUIRE_DEFAULTS): Initialize GNULIB_STRNCASECMP_L. (gl_STRINGS_H_DEFAULTS): Initialize HAVE_STRNCASECMP_L, REPLACE_STRNCASECMP_L. * modules/strings-h (Makefile.am): Substitute GNULIB_STRNCASECMP_L, HAVE_STRNCASECMP_L, REPLACE_STRNCASECMP_L. * modules/strncasecmp_l: New file. * tests/test-strings-h-c++.cc: Check declaration of strncasecmp_l. * doc/posix-functions/strncasecmp_l.texi: Mention the new module and the macOS, Solaris, Cygwin bugs.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
Description:
A substitute <strings.h>.
Files:
lib/strings.in.h
m4/strings_h.m4
Depends-on:
gen-header
include_next
snippet/arg-nonnull
snippet/c++defs
snippet/warn-on-use
sys_types-h
configure.ac:
gl_STRINGS_H
gl_STRINGS_H_REQUIRE_DEFAULTS
AC_PROG_MKDIR_P
Makefile.am:
BUILT_SOURCES += strings.h
# We need the following in order to create <strings.h> when the system
# doesn't have one that works with the given compiler.
strings.h: strings.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
@NMD@ $(AM_V_GEN)$(MKDIR_P) '%reldir%'
$(gl_V_at)$(SED_HEADER_STDOUT) \
-e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|g' \
-e 's|@''HAVE_STRINGS_H''@|$(HAVE_STRINGS_H)|g' \
-e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_STRINGS_H''@|$(NEXT_STRINGS_H)|g' \
-e 's/@''GNULIB_FFS''@/$(GNULIB_FFS)/g' \
-e 's/@''GNULIB_STRCASECMP''@/$(GNULIB_STRCASECMP)/g' \
-e 's/@''GNULIB_STRCASECMP_L''@/$(GNULIB_STRCASECMP_L)/g' \
-e 's/@''GNULIB_STRNCASECMP''@/$(GNULIB_STRNCASECMP)/g' \
-e 's/@''GNULIB_STRNCASECMP_L''@/$(GNULIB_STRNCASECMP_L)/g' \
-e 's|@''HAVE_FFS''@|$(HAVE_FFS)|g' \
-e 's|@''HAVE_STRCASECMP''@|$(HAVE_STRCASECMP)|g' \
-e 's|@''HAVE_STRCASECMP_L''@|$(HAVE_STRCASECMP_L)|g' \
-e 's|@''HAVE_STRNCASECMP''@|$(HAVE_STRNCASECMP)|g' \
-e 's|@''HAVE_STRNCASECMP_L''@|$(HAVE_STRNCASECMP_L)|g' \
-e 's|@''HAVE_DECL_STRNCASECMP''@|$(HAVE_DECL_STRNCASECMP)|g' \
-e 's|@''REPLACE_STRCASECMP''@|$(REPLACE_STRCASECMP)|g' \
-e 's|@''REPLACE_STRCASECMP_L''@|$(REPLACE_STRCASECMP_L)|g' \
-e 's|@''REPLACE_STRNCASECMP''@|$(REPLACE_STRNCASECMP)|g' \
-e 's|@''REPLACE_STRNCASECMP_L''@|$(REPLACE_STRNCASECMP_L)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
$(srcdir)/strings.in.h > $@-t
$(AM_V_at)mv $@-t $@
MOSTLYCLEANFILES += strings.h strings.h-t
Include:
<strings.h>
License:
LGPLv2+
Maintainer:
all