modules/regex


Log

Author Commit Date CI Message
Paul Eggert a078b8cd 2018-07-04T20:18:48 regex: work around conditional-dependencies glitch * modules/regex (Depends-on): Add langinfo. Without this change, I had problems building an experimental version of GNU Emacs. The symptom of the bug was a message ‘./configure: line 12726: test: =: unary operator expected’. This was due to a line in gl_FUNC_NL_LANGINFO that invokes ‘test $HAVE_LANGINFO_CODESET = 1’ even though HAVE_LANGINFO_CODESET was unset. Although gl_FUNC_NL_LANGINFO has ‘AC_REQUIRE([gl_LANGINFO_H])’ and gl_LANGINFO_H always sets HAVE_LANGINFO_CODESET to 0 or 1, gnulib-tool with --conditional-dependencies sometimes arranges for the gl_FUNC_NL_LANGINFO code to be executed before the gl_LANGINFO_H code. Since the regex code includes <langinfo.h> it should be depending on the langinfo module anyway, and this happens to work around the bug, so install that as a workaround for now. To reproduce the original problem, run the following shell script on the version of Gnulib just before this patch was installed. rm -fr foo mkdir foo cat >foo/configure.ac <<'EOF' AC_INIT(GNU Emacs, 27.0.50, bug-gnu-emacs@gnu.org, , https://www.gnu.org/software/emacs/) gl_EARLY gl_INIT AC_OUTPUT EOF ./gnulib-tool --import --conditional-dependencies --gnu-make --dir foo regex ./gnulib-tool --copy build-aux/install-sh foo/install-sh ./gnulib-tool --copy build-aux/config.sub foo/config.sub ./gnulib-tool --copy build-aux/config.guess foo/config.guess cd foo aclocal -I m4 autoconf ./configure --with-included-regex
Paul Eggert e09e64c7 2018-07-01T06:37:38 regex: revert most trimming Problems reported by Bruno Haible in: https://lists.gnu.org/r/bug-gnulib/2018-07/msg00001.html * modules/regex (Depends-on): Add lock, memcmp, memmove, and wctype back in. lock because regex users shouldn’t need to know that regex needs locking, and the rest because gnulib-tool should ordinarily ignore them anyway.
Paul Eggert b12a85c0 2018-06-30T18:47:11 regex: trim module dependencies * modules/regex (Depends-on): Remove gettext-h and lock, since the regex code should work OK without these modules, and Emacs uses it that way. Also remove memcmp, memmove, and wctype, as these modules are obsolete and should not be needed any more.
Bruno Haible 68d64349 2018-05-20T14:02:19 regex: Fix "error: possibly undefined macro: gl_GLIBC21". * modules/regex (Files): Add m4/glibc21.m4.
Paul Eggert c64a6db4 2016-12-16T16:32:04 regex: fix dependency Problem reported by Bruno Haible in: http://lists.gnu.org/archive/html/bug-gnulib/2016-12/msg00073.html * modules/regex: Depend on builtin-expect.
Paul Eggert ea7015f6 2016-12-16T09:34:02 regex: fix integer-overflow bug in never-used code Problem reported by Clément Pit–Claudel in: http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg00654.html * lib/regex_internal.h: Include intprops.h. * lib/regexec.c (re_search_2_stub): Use it to avoid undefined behavior on integer overflow. * modules/regex (Depends-on): Add intprops.
Paul Eggert e1d49dda 2014-04-17T22:41:09 regex: do not depend on malloc-gnu * modules/regex (Depends-on): Remove malloc-gnu. It's no longer needed, because of the 2012-12-29 patch "regex: port to hosts where malloc (0) == NULL". Reported by Nathan Kennedy in: http://lists.gnu.org/archive/html/bug-gnulib/2014-04/msg00026.html
Jim Meyering ade95dda 2013-08-05T11:24:26 regex: port to non-glibc/lock-using systems Since 29-05-2013 commit, 55ba71f4, compilation on a non-glibc system with GNULIB_LOCK would fail due to absence of the included "glthread/lock.h". This would affect any package for which the "lock" module is used only by the regex module, and not explicitly used. * m4/regex.m4 (gl_PREREQ_REGEX): Require gl_GLIBC21. * modules/regex (Depends-on) [!GLIBC && $ac_use_included_regex]: Add a dependency on the "lock" module.
Paul Eggert 55ba71f4 2013-05-29T10:24:17 regex: adapt to locking regime instead of depending on pthread Instead of depending on pthread, adapt to whatever thread modules are in use. Problem reported by Ludovic Courtès in <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00082.html> and by Mats Erik Andersson in <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00100.html>. * lib/regex_internal.h (lock_define, lock_init, lock_fini): Support either the 'lock' module, or the 'pthread' module, or no module. (lock_lock, lock_unlock): New macros. * lib/regexec.c (regexec, re_search_stub): Use the new macros. * modules/lock, modules/pthread (configure.ac): Add module indicator. * modules/regex (Depends-on): Remove pthread.
Paul Eggert 9ceceed2 2013-05-19T14:26:05 regex: fix dfa race in multithreaded uses Problem reported by Ludovic Courtès in <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00058.html>. * lib/regex_internal.h (lock_define, lock_init, lock_fini): New macros. All uses of __libc_lock_define, __libc_lock_init changed to use the first two of these. (__libc_lock_lock, __libc_lock_unlock): New macros, for non-glibc platforms. (struct re_dfa_t): Define the lock unconditionally. * lib/regexec.c (regexec, re_search_stub): Remove some now-incorrect '#ifdef _LIBC"s. * modules/regex (Depends-on): Add pthread, if we use the included regex. * lib/regcomp.c: Do actions that are not needed for glibc, but may be needed elsewhere. (regfree, re_compile_internal): Destroy the lock. (re_compile_internal): Check for lock-initialization failure.
Paul Eggert 14ec011a 2012-12-30T19:25:19 regex: remove unnecessary dependency on localcharset.h * lib/regex_internal.h [!_LIBC]: Don't include localcharset.h; hasn't been needed for years. * modules/regex (Depends-on): Remove localcharset.
Paul Eggert bbf0d723 2012-12-29T22:56:31 regex: port to hosts where malloc (0) == NULL Reported by Aharon Robbins in <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>. * lib/regex_internal.c (re_node_set_alloc): Don't assume that malloc (0) yields nonnull. * lib/regex_internal.h (MALLOC_0_IS_NONNULL): New macro. * m4/regex.m4 (gl_PREREQ_REGEX): Require gl_EEMALLOC. * modules/regex (Files): Add m4/eealloc.m4.
Paul Eggert d4903bb0 2012-06-26T15:16:07 regex: use locale-independent comparison for codeset name See Bruno Haible's comment in <http://bugs.gnu.org/10305#120>. * lib/regcomp.c (init_dfa): Use just ASCII case comparison for codeset name. * lib/regex_internal.h: Do not include <strings.h>, since we no longer use strcasecmp. * modules/regex (Depends-on): Remove strcase.
Bruno Haible 557f8d27 2012-01-10T22:28:30 regex: Avoid link error on MSVC 9. * modules/regex (Depends-on): Add wctype.
Bruno Haible c3de829c 2011-07-12T12:23:23 regex: Depend on module 'strcase'. * modules/regex (Depends-on): Add strcase, for strcasecmp().
Bruno Haible a851d08b 2011-05-21T18:13:27 regex: Move AC_LIBOBJ invocations to module description. * m4/regex.m4 (gl_REGEX): Move AC_LIBOBJ and gl_PREREQ_REGEX invocations from here... * modules/regex (configure.ac): ... to here.
Bruno Haible 7cbbd8a3 2011-05-03T23:36:43 Avoid unnecessary compilation units, through conditional dependencies. * modules/accept (Depends-on): Add conditions to the dependencies. * modules/acosl (Depends-on): Likewise. * modules/argz (Depends-on): Likewise. * modules/asinl (Depends-on): Likewise. * modules/atanl (Depends-on): Likewise. * modules/atoll (Depends-on): Likewise. * modules/bind (Depends-on): Likewise. * modules/btowc (Depends-on): Likewise. * modules/canonicalize-lgpl (Depends-on): Likewise. * modules/ceil (Depends-on): Likewise. * modules/ceilf (Depends-on): Likewise. * modules/ceill (Depends-on): Likewise. * modules/chdir-long (Depends-on): Likewise. * modules/chown (Depends-on): Likewise. * modules/close (Depends-on): Likewise. * modules/connect (Depends-on): Likewise. * modules/cosl (Depends-on): Likewise. * modules/dirfd (Depends-on): Likewise. * modules/dprintf (Depends-on): Likewise. * modules/dprintf-posix (Depends-on): Likewise. * modules/error (Depends-on): Likewise. * modules/euidaccess (Depends-on): Likewise. * modules/expl (Depends-on): Likewise. * modules/faccessat (Depends-on): Likewise. * modules/fchdir (Depends-on): Likewise. * modules/fclose (Depends-on): Likewise. * modules/fcntl (Depends-on): Likewise. * modules/fdopendir (Depends-on): Likewise. * modules/fflush (Depends-on): Likewise. * modules/floor (Depends-on): Likewise. * modules/floorf (Depends-on): Likewise. * modules/floorl (Depends-on): Likewise. * modules/fnmatch (Depends-on): Likewise. * modules/fopen (Depends-on): Likewise. * modules/fprintf-posix (Depends-on): Likewise. * modules/frexp (Depends-on): Likewise. * modules/frexp-nolibm (Depends-on): Likewise. * modules/frexpl (Depends-on): Likewise. * modules/frexpl-nolibm (Depends-on): Likewise. * modules/fseek (Depends-on): Likewise. * modules/fsusage (Depends-on): Likewise. * modules/ftell (Depends-on): Likewise. * modules/ftello (Depends-on): Likewise. * modules/futimens (Depends-on): Likewise. * modules/getcwd (Depends-on): Likewise. * modules/getcwd-lgpl (Depends-on): Likewise. * modules/getdelim (Depends-on): Likewise. * modules/getdomainname (Depends-on): Likewise. * modules/getgroups (Depends-on): Likewise. * modules/gethostname (Depends-on): Likewise. * modules/getline (Depends-on): Likewise. * modules/getlogin_r (Depends-on): Likewise. * modules/getopt-posix (Depends-on): Likewise. * modules/getpeername (Depends-on): Likewise. * modules/getsockname (Depends-on): Likewise. * modules/getsockopt (Depends-on): Likewise. * modules/getsubopt (Depends-on): Likewise. * modules/getusershell (Depends-on): Likewise. * modules/glob (Depends-on): Likewise. * modules/grantpt (Depends-on): Likewise. * modules/iconv_open (Depends-on): Likewise. * modules/iconv_open-utf (Depends-on): Likewise. * modules/inet_ntop (Depends-on): Likewise. * modules/inet_pton (Depends-on): Likewise. * modules/ioctl (Depends-on): Likewise. * modules/isapipe (Depends-on): Likewise. * modules/isfinite (Depends-on): Likewise. * modules/isinf (Depends-on): Likewise. * modules/lchown (Depends-on): Likewise. * modules/ldexpl (Depends-on): Likewise. * modules/link (Depends-on): Likewise. * modules/linkat (Depends-on): Likewise. * modules/listen (Depends-on): Likewise. * modules/logl (Depends-on): Likewise. * modules/lstat (Depends-on): Likewise. * modules/mbrlen (Depends-on): Likewise. * modules/mbrtowc (Depends-on): Likewise. * modules/mbsinit (Depends-on): Likewise. * modules/mbsnrtowcs (Depends-on): Likewise. * modules/mbsrtowcs (Depends-on): Likewise. * modules/mbtowc (Depends-on): Likewise. * modules/memcmp (Depends-on): Likewise. * modules/mkdir (Depends-on): Likewise. * modules/mkdtemp (Depends-on): Likewise. * modules/mkfifo (Depends-on): Likewise. * modules/mkfifoat (Depends-on): Likewise. * modules/mknod (Depends-on): Likewise. * modules/mkostemp (Depends-on): Likewise. * modules/mkostemps (Depends-on): Likewise. * modules/mkstemp (Depends-on): Likewise. * modules/mkstemps (Depends-on): Likewise. * modules/mktime (Depends-on): Likewise. * modules/nanosleep (Depends-on): Likewise. * modules/open (Depends-on): Likewise. * modules/openat (Depends-on): Likewise. * modules/perror (Depends-on): Likewise. * modules/poll (Depends-on): Likewise. * modules/popen (Depends-on): Likewise. * modules/posix_spawn (Depends-on): Likewise. * modules/posix_spawn_file_actions_addclose (Depends-on): Likewise. * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise. * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise. * modules/posix_spawnp (Depends-on): Likewise. * modules/pread (Depends-on): Likewise. * modules/printf-posix (Depends-on): Likewise. * modules/ptsname (Depends-on): Likewise. * modules/putenv (Depends-on): Likewise. * modules/pwrite (Depends-on): Likewise. * modules/readline (Depends-on): Likewise. * modules/readlink (Depends-on): Likewise. * modules/readlinkat (Depends-on): Likewise. * modules/recv (Depends-on): Likewise. * modules/recvfrom (Depends-on): Likewise. * modules/regex (Depends-on): Likewise. * modules/remove (Depends-on): Likewise. * modules/rename (Depends-on): Likewise. * modules/renameat (Depends-on): Likewise. * modules/rmdir (Depends-on): Likewise. * modules/round (Depends-on): Likewise. * modules/roundf (Depends-on): Likewise. * modules/roundl (Depends-on): Likewise. * modules/rpmatch (Depends-on): Likewise. * modules/select (Depends-on): Likewise. * modules/send (Depends-on): Likewise. * modules/sendto (Depends-on): Likewise. * modules/setenv (Depends-on): Likewise. * modules/setlocale (Depends-on): Likewise. * modules/setsockopt (Depends-on): Likewise. * modules/shutdown (Depends-on): Likewise. * modules/sigaction (Depends-on): Likewise. * modules/signbit (Depends-on): Likewise. * modules/sigprocmask (Depends-on): Likewise. * modules/sinl (Depends-on): Likewise. * modules/sleep (Depends-on): Likewise. * modules/snprintf (Depends-on): Likewise. * modules/snprintf-posix (Depends-on): Likewise. * modules/socket (Depends-on): Likewise. * modules/sprintf-posix (Depends-on): Likewise. * modules/sqrtl (Depends-on): Likewise. * modules/stat (Depends-on): Likewise. * modules/strchrnul (Depends-on): Likewise. * modules/strdup-posix (Depends-on): Likewise. * modules/strerror (Depends-on): Likewise. * modules/strerror_r-posix (Depends-on): Likewise. * modules/strndup (Depends-on): Likewise. * modules/strnlen (Depends-on): Likewise. * modules/strptime (Depends-on): Likewise. * modules/strsep (Depends-on): Likewise. * modules/strsignal (Depends-on): Likewise. * modules/strstr-simple (Depends-on): Likewise. * modules/strtod (Depends-on): Likewise. * modules/strtoimax (Depends-on): Likewise. * modules/strtok_r (Depends-on): Likewise. * modules/strtoumax (Depends-on): Likewise. * modules/symlink (Depends-on): Likewise. * modules/symlinkat (Depends-on): Likewise. * modules/tanl (Depends-on): Likewise. * modules/tcgetsid (Depends-on): Likewise. * modules/tmpfile (Depends-on): Likewise. * modules/trunc (Depends-on): Likewise. * modules/truncf (Depends-on): Likewise. * modules/truncl (Depends-on): Likewise. * modules/uname (Depends-on): Likewise. * modules/unlink (Depends-on): Likewise. * modules/unlockpt (Depends-on): Likewise. * modules/unsetenv (Depends-on): Likewise. * modules/usleep (Depends-on): Likewise. * modules/utimensat (Depends-on): Likewise. * modules/vasprintf (Depends-on): Likewise. * modules/vdprintf (Depends-on): Likewise. * modules/vdprintf-posix (Depends-on): Likewise. * modules/vfprintf-posix (Depends-on): Likewise. * modules/vprintf-posix (Depends-on): Likewise. * modules/vsnprintf (Depends-on): Likewise. * modules/vsnprintf-posix (Depends-on): Likewise. * modules/vsprintf-posix (Depends-on): Likewise. * modules/wcrtomb (Depends-on): Likewise. * modules/wcscasecmp (Depends-on): Likewise. * modules/wcscspn (Depends-on): Likewise. * modules/wcsdup (Depends-on): Likewise. * modules/wcsncasecmp (Depends-on): Likewise. * modules/wcsnrtombs (Depends-on): Likewise. * modules/wcspbrk (Depends-on): Likewise. * modules/wcsrtombs (Depends-on): Likewise. * modules/wcsspn (Depends-on): Likewise. * modules/wcsstr (Depends-on): Likewise. * modules/wcstok (Depends-on): Likewise. * modules/wcswidth (Depends-on): Likewise. * modules/wctob (Depends-on): Likewise. * modules/wctomb (Depends-on): Likewise. * modules/wctype (Depends-on): Likewise. * modules/wcwidth (Depends-on): Likewise. * modules/write (Depends-on): Likewise.
Bruno Haible a6dbbbfc 2011-02-06T18:46:42 Rename module 'wctype' to 'wctype-h'. * modules/wctype-h: Renamed from modules/wctype. * modules/wctype: Simplyfy to a redirection to 'wctype-h'. * modules/wctype-h-tests: Renamed from modules/wctype-tests. (Files, Depends-on, Makefile.am): Update. * modules/wctype-h-c++-tests: Renamed from modules/wctype-c++-tests. (Files, Makefile.am): Update. * tests/test-wctype-h.c: Renamed from tests/test-wctype.c. * tests/test-wctype-h-c++.cc: Renamed from tests/test-wctype-c++.cc. * doc/posix-headers/wctype.texi: Update. * doc/posix-functions/iswalnum.texi: Update. * doc/posix-functions/iswalpha.texi: Update. * doc/posix-functions/iswblank.texi: Update. * doc/posix-functions/iswcntrl.texi: Update. * doc/posix-functions/iswdigit.texi: Update. * doc/posix-functions/iswgraph.texi: Update. * doc/posix-functions/iswlower.texi: Update. * doc/posix-functions/iswprint.texi: Update. * doc/posix-functions/iswpunct.texi: Update. * doc/posix-functions/iswspace.texi: Update. * doc/posix-functions/iswupper.texi: Update. * doc/posix-functions/iswxdigit.texi: Update. * doc/posix-functions/towlower.texi: Update. * doc/posix-functions/towupper.texi: Update. * NEWS: Mention the change. * modules/fnmatch (Dependencies): Add wctype-h, remove wctype. * modules/mbchar (Dependencies): Likewise. * modules/mbswidth (Dependencies): Likewise. * modules/quotearg (Dependencies): Likewise. * modules/regex (Dependencies): Likewise. * modules/wcscasecmp (Dependencies): Likewise. * modules/wcsncasecmp (Dependencies): Likewise. * modules/wcwidth (Dependencies): Likewise.
Bruno Haible 2cc24613 2010-11-27T18:22:51 regex: Mention link dependencies. * modules/regex (Link): New section. * modules/rpmatch (Link): Likewise. * modules/regex-quote-tests (Makefile.am): Link with $(LIBINTL).
Bruno Haible 1c8b7571 2010-08-28T23:20:01 Rename module 'malloc' -> 'malloc-gnu'.
Bruno Haible bd2a15fd 2010-05-24T12:45:20 Adjust #include directive style.
Bruno Haible 5a4965c0 2010-05-24T12:23:03 regex: Don't require alloca.
Jim Meyering 0cfc3b87 2010-01-04T09:07:52 regcomp: sync from glibc; always use nl_langinfo * lib/regcomp.c (init_dfa) [!LIBC]: Always use nl_langinfo (CODESET), now that gnulib provides it. Recognize UTF8 as well as UTF-8. * lib/regex_internal.h: Always include <langinfo.h>, now. * modules/regex (Depends-on): Add nl_langinfo.
Paolo Bonzini 830527f9 2009-01-21T08:53:53 Revert "regex: do not depend on obsolete modules." This reverts commit 1a6b59df981785c8a2c335e96d173a884b335fbf.
Paolo Bonzini 1a6b59df 2009-01-20T10:10:13 regex: do not depend on obsolete modules. * modules/regex: Remove memcmp and memmove.
Paolo Bonzini 7134da01 2008-12-22T10:59:46 update regex to use the emulated mb*/wc* functions * modules/regex: Request emulations for the mb*/wc* functions we need. * m4/regex.m4: Don't look for those functions here. * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
Bruno Haible 8ea92485 2008-11-02T17:35:43 Mark 'memmove' obsolete.
Bruno Haible 78008cd2 2008-11-02T16:57:03 Mark 'memcmp' obsolete.
Bruno Haible 414d630c 2008-03-23T23:49:02 Fix regex compilation error on HP-UX 11.
Bruno Haible 89861a8b 2007-07-16T10:45:26 Use the synonymous term LGPLv2.
Paul Eggert dea6f708 2007-02-15T00:16:55 Fix regex code so it doesn't rely on strcasecmp. * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined. Otherwise, include gnulib's langinfo.h. * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have undesirable behavior in non-C locales. Instead, rely on locale_charset. * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET. * modules/regex (FILES): Remove m4/codeset.m4. (Depends-on): Add localcharset. Remove strcase.
Bruno Haible 41a7e5f2 2007-02-08T23:34:28 * modules/regex (Depends-on): Add stdbool.
Eric Blake 24de042d 2007-02-01T13:41:12 * modules/regex (Depends-on): Revert dependence on mempcpy. * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string module's definition of mempcpy. Reported by Paul Eggert.
Eric Blake eb84fa93 2007-02-01T05:01:17 * 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.
Eric Blake 96f7b7d9 2007-01-16T16:31:23 * modules/fnmatch (Depends-on): Depend on wchar. * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>. * m4/fnmatch.m4: Likewise. * modules/mbchar (Makefile.am): Assume <wchar.h>. * m4/mbchar.m4: Likewise. * modules/mbswidth (Depends-on): Depend on wchar. * lib/mbswidth.c: Assume <wchar.h>. * m4/mbswidth.m4: Likewise. * modules/quotearg (Depends-on): Depend on wchar. * lib/quotearg.c: Assume <wchar.h>. * m4/quotearg.m4: Likewise. * modules/regex (Depends-on): Depend on wchar. * lib/regex_internal.h: Assume <wchar.h>. * m4/regex.m4: Likewise. * modules/stdint (Depends-on): Depend on wchar. * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>. * m4/stdint.m4: Likewise. * tests/test-stdint.c [HAVE_WINT_T]: Likewise. * modules/strftime (Depends-on): Depend on wchar. * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>. * modules/strtol (Depends-on): Depend on wchar. * lib/strtol.c: Assume <wchar.h>. * modules/wcwidth (Depends-on): Depend on wchar. * lib/wcwidth.h: Assume <wchar.h>. * m4/wcwidth.m4: Likewise.
Paul Eggert 44fa0d78 2006-12-22T00:21:54 * MODULES.html.sh: New module wctype. * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files. * lib/fnmatch.c: Don't bother to include <wchar.h> before <wctype.h>, since the new wctype module should fix this. * lib/quotearg.c: Include <wctype.h> unconditionally, since the wctype module should arrange for it. * lib/regex_internal.h: Likewise. * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint, since the wctype module should handle this now. * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h. * modules/fnmatch (Depends-on): Add wctype. * modules/quotearg (Depends-on): Likewise. * modules/regex (Depends-on): Likewise.
Bruno Haible 5eeec029 2006-10-13T12:40:22 gnulib-tool now synthesizes the EXTRA_DIST line.
Bruno Haible e8684643 2006-10-12T18:52:30 Distribute all lib/* source files through EXTRA_DIST.
Paul Eggert 901bc47c 2006-08-21T21:46:31 Avoid the need for AC_LIBSOURCES in m4 macros. * modules/acl (EXTRA_DIST): Add acl.h. * modules/argmatch (Files): Add m4/argmatch.m4. (configure.ac): Add gl_ARGMATCH. (EXTRA_DIST): Renamed from lib_SOURCES, for consistency with the other modules. Remove argmatch.c. * modules/backupfile (EXTRA_DIST): Add backupfile.h. * modules/c-strtod (EXTRA_DIST): Add c-strtod.h. * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h. * modules/canonhost (EXTRA_DIST): Add c-canonhost.h. * modules/canonicalize (EXTRA_DIST): Add canonicalize.h. * modules/chdir-long (EXTRA_DIST): Add chdir-long.h. * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h. * modules/cloexec (EXTRA_DIST): Add cloexec.h. * modules/close-stream (EXTRA_DIST): Add close-stream.h. * modules/closeout (EXTRA_DIST): Add closeout.h. * modules/cycle-check (EXTRA_DIST): Add cycle-check.h. * modules/dev-ino (EXTRA_DIST): Add dev-ino.h. * modules/dirfd (EXTRA_DIST): Add dirfd.h. * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES. Add dirname.h; remove basename.c and stripslash.c. * modules/exclude (EXTRA_DIST): Add exclude.h. * modules/exitfail (EXTRA_DIST): Add exitfail.h. * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h. * modules/file-type (EXTRA_DIST): Add file-type.h. * modules/filemode (EXTRA_DIST): Add filemode.h. * modules/filenamecat (EXTRA_DIST): Add filenamecat.h. * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h. * modules/fpending (EXTRA_DIST): Add __fpending.h. * modules/fprintftime (EXTRA_DIST): Add fprintftime.h. * modules/fsusage (EXTRA_DIST): Add fsusage.h. * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c. * modules/getcwd (EXTRA_DIST): Add getcwd.h. * modules/getdate (EXTRA_DIST): Add getdate.c. * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h. * modules/getpagesize (EXTRA_DIST): Add getpagesize.h. * modules/getpass (EXTRA_DIST): Add getpass.h. * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h. * modules/group-member (EXTRA_DIST): Add group-member.h. * modules/hard-locale (EXTRA_DIST): Add hard-locale.h. * modules/hash (EXTRA_DIST): Add hash.h. * modules/human (EXTRA_DIST): Add human.h. * modules/inttypes (EXTRA_DIST): Add inttypes.h. * modules/lchmod (EXTRA_DIST): Add lchmod.h. * modules/lchown (EXTRA_DIST): Add lchown.h. * modules/long-options (EXTRA_DIST): Add long-options.h. * modules/lstat (EXTRA_DIST): Add lstat.h. * modules/md5 (EXTRA_DIST): Add memcasecmp.h. * modules/memcoll (EXTRA_DIST): Add memcoll.h. * modules/mempcpy (EXTRA_DIST): Add mempcpy.h. * modules/memrchr (EXTRA_DIST): Add memrchr.h. * modules/memxor (EXTRA_DIST): Add memxor.h. * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h. * modules/mkdir-p (EXTRA_DIST): Add modechange.h. * modules/mountlist (EXTRA_DIST): Add mountlist.h. * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h. * modules/pathmax (EXTRA_DIST): Add pathmax.h. * modules/physmem (EXTRA_DIST): Add physmem.h. * modules/posixtm (EXTRA_DIST): Add posixtm.h. * modules/posixver (EXTRA_DIST): Add posixver.h. * modules/quote (EXTRA_DIST): Add quote.h. * modules/quotearg (EXTRA_DIST): Add quotearg.h. * modules/readtokens (EXTRA_DIST): Add readtokens.h. * modules/readutmp (EXTRA_DIST): Add readutmp.h. * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c regex_internal.h regexec.c. * modules/safe-read (EXTRA_DIST): Add safe-read.h. * modules/safe-write (EXTRA_DIST): Add safe-write.h. * modules/same (EXTRA_DIST): Add same.h. * modules/same-inode (EXTRA_DIST): Add same-inode.h. * modules/save-cwd (EXTRA_DIST): Add save-cwd.h. * modules/savedir (EXTRA_DIST): Add savedir.h. * modules/sha1 (EXTRA_DIST): Add sha1.h. * modules/sig2str (EXTRA_DIST): Add sig2str.h. * modules/stat-macros (EXTRA_DIST): Add stat-macros.h. * modules/stat-time (EXTRA_DIST): Add stat-time.h. * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h. * modules/strdup (EXTRA_DIST): Add strdup.h. * modules/strftime (EXTRA_DIST): Add strftime.h. * modules/strndup (EXTRA_DIST): Add strndup.h. * modules/strnlen (EXTRA_DIST): Add strnlen.h. * modules/strverscmp (EXTRA_DIST): Add strverscmp.h. * modules/time_r (EXTRA_DIST): Add time_r.h. * modules/timespec (EXTRA_DIST): Add timespec.h. * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h. * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h. * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h. * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h. * modules/userspec (EXTRA_DIST): Add userspec.h. * modules/utimecmp (EXTRA_DIST): Add utimecmp.h. * modules/utimens (EXTRA_DIST): Add utimens.h. * modules/xalloc (EXTRA_DIST): Add xalloc.h. * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h. * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h. * modules/xreadlink (EXTRA_DIST): Add xreadlink.h. * modules/xstrtod (EXTRA_DIST): Add xstrtod.h. * modules/xstrtol (EXTRA_DIST): Add xstrtol.h. * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h. * modules/yesno (EXTRA_DIST): Add yesno.h. + * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed. * m4/dev-ino.m4, same-inode.m4: Remove. + * m4/_inttypes_h.m4 (gl_INTTYPES_H): * m4/acl.m4 (AC_FUNC_ACL): * m4/backupfile.m4 (gl_BACKUPFILE): * m4/c-strtod.m4 (gl_C99_STRTOLD): * m4/canon-host.m4 (gl_CANON_HOST): * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): * m4/chdir-safer.m4 (gl_CHDIR_SAFER): * m4/cloexec.m4 (gl_CLOEXEC): * m4/close-stream.m4 (gl_CLOSE_STREAM): * m4/closeout.m4 (gl_CLOSEOUT): * m4/dirfd.m4 (gl_FUNC_DIRFD): * m4/dirname.m4 (gl_DIRNAME): * m4/exclude.m4 (gl_EXCLUDE): * m4/exitfail.m4 (gl_EXITFAIL): * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): * m4/file-type.m4 (gl_FILE_TYPE): * m4/filemode.m4 (gl_FILEMODE): * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT): * m4/fpending.m4 (gl_FUNC_FPENDING): * m4/fprintftime.m4 (gl_FPRINTFTIME): * m4/fts.m4 (gl_FUNC_FTS): * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): * m4/getdate.m4 (gl_GETDATE): * m4/gethrxtime.m4 (gl_GETHRXTIME): * m4/getpagesize.m4 (gl_GETPAGESIZE): * m4/getpass.m4 (gl_FUNC_GETPASS): * m4/gettime.m4 (gl_GETTIME): * m4/getugroups.m4 (gl_GETUGROUPS): * m4/glob.m4 (gl_GLOB_SUBSTITUTE): * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): * m4/hard-locale.m4 (gl_HARD_LOCALE): * m4/hash.m4 (gl_HASH): * m4/idcache.m4 (gl_IDCACHE): * m4/lchmod.m4 (gl_FUNC_LCHMOD): * m4/lchown.m4 (gl_FUNC_LCHOWN): * m4/long-options.m4 (gl_LONG_OPTIONS): * m4/lstat.m4 (gl_FUNC_LSTAT): * m4/md5.m4 (gl_MD5): * m4/memcasecmp.m4 (gl_MEMCASECMP): * m4/memcoll.m4 (gl_MEMCOLL): * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): * m4/memrchr.m4 (gl_FUNC_MEMRCHR): * m4/memxor.m4 (gl_MEMXOR): * m4/mkancesdirs.m4 (gl_MKANCESDIRS): * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): * m4/modechange.m4 (gl_MODECHANGE): * m4/mountlist.m4 (gl_MOUNTLIST): * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): * m4/openat.m4 (gl_FUNC_OPENAT): * m4/pathmax.m4 (gl_PATHMAX): * m4/physmem.m4 (gl_PHYSMEM): * m4/posixtm.m4 (gl_POSIXTM): * m4/posixver.m4 (gl_POSIXVER): * m4/quote.m4 (gl_QUOTE): * m4/quotearg.m4 (gl_QUOTEARG): * m4/readtokens.m4 (gl_READTOKENS): * m4/readutmp.m4 (gl_READUTMP): * m4/regex.m4 (gl_REGEX): * m4/safe-read.m4 (gl_SAFE_READ): * m4/safe-write.m4 (gl_SAFE_WRITE): * m4/same.m4 (gl_SAME): * m4/save-cwd.m4 (gl_SAVE_CWD): * m4/savedir.m4 (gl_SAVEDIR): * m4/settime.m4 (gl_SETTIME): * m4/sha1.m4 (gl_SHA1): * m4/sig2str.m4 (gl_FUNC_SIG2STR): * m4/stat-macros.m4 (gl_STAT_MACROS): * m4/stat-time.m4 (gl_STAT_TIME): * m4/stdio-safer.m4 (gl_FOPEN_SAFER): * m4/stdlib-safer.m4 (gl_STDLIB_SAFER): * m4/strdup.m4 (gl_FUNC_STRDUP): * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): * m4/strndup.m4 (gl_FUNC_STRNDUP): * m4/strnlen.m4 (gl_FUNC_STRNLEN): * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): * m4/time_r.m4 (gl_TIME_R): * m4/timespec.m4 (gl_TIMESPEC): * m4/unistd-safer.m4 (gl_UNISTD_SAFER): * m4/unlinkdir.m4 (gl_UNLINKDIR): * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): * m4/userspec.m4 (gl_USERSPEC): * m4/utimecmp.m4 (gl_UTIMECMP): * m4/utimens.m4 (gl_UTIMENS): * m4/xalloc.m4 (gl_XALLOC): * m4/xgetcwd.m4 (gl_XGETCWD): * m4/xnanosleep.m4 (gl_XNANOSLEEP): * m4/xreadlink.m4 (gl_XREADLINK): * m4/xstrtod.m4 (gl_XSTRTOD): * m2/yesno.m4 (gl_YESNO): Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/ to get the necessary .h files and whatnot.
Paul Eggert 82ff49b5 2006-08-21T06:11:26 Add and change modules to make it easier for coreutils to use gnulib-tool. * lib/cycle-check.h: Include <stdint.h> unconditionally, since we now assume the stdint module. Do not include inttypes.h. * lib/fsusage.h: Likewise. * lib/getndelim2.c: Likewise. * lib/human.h: Likewise. * lib/inttostr.h: Likewise. * lib/obstack.c: Likewise. * lib/regex_internal.h: Likewise. * lib/tempname.c: Likewise. * lib/utimecmp.c: Likewise. * lib/xstrtol.h: Likewise. * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT. * lib/strtoimax.c: Adjust to macro name changes in Autoconf, e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT. * lib/xtime.h: Likewise. Remove files that are no longer needed by their respective modules. * m4/obstack.m4: Remove. * m4/strerror_r.m4: Remove. * m4/uint32_t.m4: Remove. * m4/uintptr_t.m4: Remove. * m4/ullong_max.m4: Remove. * m4/xstrtoimax.m4: Remove. * m4/xstrtoumax.m4: Remove. * cycle-check.m4 (gl_CYCLE_CHECK): Do not require gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib dependencies now capture this. * cycle-check.m4 (gl_CYCLE_CHECK): Do not use AC_LIBSOURCES, since gnulib modules now do this. * fsusage.m4 (gl_FSUSAGE): Likewise. * human.m4 (gl_HUMAN): Likewise. * inttostr.m4 (gl_INTTOSTR): Likewise. * xstrtol.m4 (gl_XSTRTOL): Likewise. * filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE. * filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require stdint. * human.m4 (gl_HUMAN): Likewise. * inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise. * mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise. * strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise. * strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise. * xstrtol (gl_XSTRTOL): Likewise. * gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG -> AC_TYPE_LONG_LONG_INT. * strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise. * strtoll.m4 (gl_FUNC_STRTOLL): Likewise. * strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long. * strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise. * human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend on stdbool. * xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove. (gl_PREREQ_XSTRTOUL): Remove. * ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt. * posixver.m4: Fix comment since head -1 now works even in POSIX mode. * modules/backupfile (Files): Remove m4/d-ino.m4. (Depends-on): Add d-ino. * modules/cycle-check (Depends-on): Add stdint. (lib_SOURCES): Add cycle-check.h. * modules/d-ino: New module. * modules/d-type: New module. * modules/error (Files): Remove m4/strerror_r.m4. * modules/filemode (Files): Add m4/st_dm_mode.m4. * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4. (Depends-on): Add stdint. (lib_SOURCES): Add fsusage.h. * modules/getcwd (Files): Remove d-ino.m4. (Depends-on): Add d-ino. * modules/getndelim2 (Depends-on): Add stdint. * modules/glob (Files): Remove m4/d-type.m4. (Depends-on): Add d-type. * modules/host-os: New module. * modules/human (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4. * Depends-on: Add stdint. (lib_SOURCES): Add human.h. * modules/inttostr (Files): Remove m4/intmax_t.m4, m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4. (Depends-on): Add stdint. (EXTRA_DIST): Add inttostr.h. * modules/lchmod: New module. * modules/link-follow: New module. * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4. (Depends-on): Add lchmod. * modules/mkstemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4. (Depends-on): Add stdint. * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4, m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4. (Depends-on): Add stdint. (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK. * modules/perl: New module. * modules/regex (Depends-on): Add stdint. * modules/rmdir-errno: New module. * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4, m4/intmax_t.m4. (Depends-on): Add stdint. * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4. (Depends-on): Add stdint. * modules/unlink-busy: New module. * modules/utimecmp (Depends-on): Add stdint. * modules/uptime: New module. * modules/winsz-ioctl: New module. * modules/winsz-termios: New module. * modules/xnanosleep (Depends-on): Add nanosleep. * modules/ullong_max: Remove. * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4. (configure.ac): Remove gl_XSTRTOIMAX; no action needed now. * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4, m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4. (Depends-on): Add inttypes. (lib_SOURCES): Add xstrtol.h. * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4. (configure.ac): Remove gl_XSTRTOUMAX; no action needed now. * MODULES.html.sh: Move 'assert' into the assert section. Move 'dummy' into the linking section. Remove ullong_max. Add section for compatibility checks for POSIX:2001 functions, and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy, winsz-ioctl, and winsz-termios into it. Add lchmod. Add top-level Misc section and put host-os, perl, and uptime into it.
Paul Eggert 3e121868 2006-08-09T22:52:40 Remove the 'restrict' module, and modify everybody to use AC_C_RESTRICT rather than gl_C_RESTRICT.
Paul Eggert 8335a4d6 2006-04-10T06:43:33 Merge regex changes from libc, removing some of our POSIX-conformance changes that were rejected and redoing them in a less-intrusive way. * lib/regcomp.c (re_compile_internal, init_dfa): Length arg is now size_t, not Idx. All uses changed. (peek_token): Forward decl now says internal_function. (__re_error_msgid, __re_error_msgid_idx): Now static rather than extern with attribute_hidden. (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn. For some reason libc prefers K&R style defns for external functions. (regerror) [!defined _LIBC]: Likewise. (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp): (seek_collating_symbol_entry, lookup_collation_sequence_value): (build_range_exp, build_collating_symbol): Use K&R-style defn. (re_compile_fastmap): Use '\0' to memset, not 0. (utf8_sb_map): Make the calculations more obvious. (init_dfa, parse_bracket_exp, build_charclass_op): Call calloc and cast result, as glibc does. (init_word_char, fetch_token, peek_token, peek_token_bracket): (build_range_exp, build_collating_symbol): Now internal functions. * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers. * lib/regex.h (__USE_GNU_REGEX): New macro. Don't depend on _REGEX_SOURCE any more; depend on _GNU_SOURCE instead. Don't depend on VMS; depend on __VMS instead, for POSIX namespace cleanness. (regoff_t): Define to ssize_t, not long int. Remove the REG_ macros named below. Instead, make the old names (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if __USE_GNU_REGEX. (REG_BACKSLASH_ESCAPE_IN_LISTS): (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS): (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS): (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE): (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT): (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS): (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES): (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING): (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD): (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE): (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS): (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK): (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP): (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON): (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC): (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED): (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED): (REG_NREGS): Remove. All uses replaced by the old RE_* names. (RE_BACKSLASH_ESCAPE_IN_LISTS): (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS): (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS): (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE): (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT): (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS): (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES): (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING): (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD): (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE): (RE_CONTEXT_INVALID_DUP, RE_NO_SUB): Don't bother having these macros be independent of each others' values, since they no longer exist in the POSIX name space. Rename the following member names back to their old names, unless !__USE_GNU_REGEX. All uses changed back. (buffer): Renamed from re_buffer. (allocated): Renamed from re_allocated. (used): Renamed from re_used. (syntax): Renamed from re_syntax. (fastmap): Renamed from re_fastmap. (translate): Renamed from re_translate. (can_be_null): Renamed from re_can_be_null. (regs_allocated): Renamed from re_regs_allocated. (fastmap_accurate): Renamed from re_fastmap_accurate. (no_sub): Renamed from re_no_sub. (not_bol): Renamed from re_not_bol. (not_eol): Renamed from re_not_eol. (newline_anchor): Renamed from re_newline_anchor. (num_regs): Renamed from rm_num_regs. (start): Renamed from rm_start. (end): Renamed from rm_end. (free_state): Move up a bit. * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]: #define to be empty. (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2 when that is what is intended. (SBC_MAX): Define to UCHAR_MAX + 1, not 256. (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed. (MAX): New macro. (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove. All uses changed back to re_malloc, etc. It's now the caller's responsibility to check for overflow; all callers changed. (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc): (re_x2nrealloc): Remove. (free_state): Remove decl. * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2): (re_set_registers, re_exec): Use K&R-style defn. 2006-01-31 Roland McGrath <roland@redhat.com> * lib/regcomp.c (calc_eclosure_iter): Remove dead variables. Reported by Mike Frysinger <vapier@gentoo.org>. 2006-01-15 Andreas Jaeger <aj@suse.de> [BZ #1950] * lib/regex_internal.c (re_string_reconstruct): Adjust for build_wcs_upper_buffer change. (build_wcs_upper_buffer): Change return type. 2005-12-10 Ulrich Drepper <drepper@redhat.com> * lib/regex_internal.h: Include <stdint.h> if available. 2005-12-06 Paolo Bonzini <bonzini@gnu.org> * lib/regex_internal.h (SIZE_MAX): Provide a default definition. 2005-10-14 Ulrich Drepper <drepper@redhat.com> * lib/regcomp.c: Adjust for changed secondary hash function. 2005-09-30 Ulrich Drepper <drepper@redhat.com> * lib/regex.h: Pretty printing. Clean up namespace a bit. 2005-09-30 Jakub Jelinek <jakub@redhat.com> * lib/regexec.c (update_cur_sifted_state, check_arrival, check_arrival_add_next_nodes): Avoid using uninitialized variable. 2005-09-06 Paul Eggert <eggert@cs.ucla.edu> Ulrich Drepper <drepper@redhat.com> [BZ #1302] * lib/regex_internal.h (bitset_t): Renamed from bitset. All uses changed. (bitset_word_t): Renamed from bitset_word. All uses changed. 2005-09-22 Ulrich Drepper <drepper@redhat.com> [BZ #281] * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *. * lib/regcomp.c: Remove unnecessary uses of unsigned RE_TRANSLATE_TYPE. * lib/regex_internal.h: Likewise. * lib/regex_internal.c: Likewise. * lib/regexec.c: Likewise. Based on a patch by Stepan Kasal <kasal@ucw.cz>. 2005-09-07 Ulrich Drepper <drepper@redhat.com> * lib/regexec.c (find_recover_state): Remove unnecessary initialization. (transit_state_bkref): Make DFA a const pointer. (get_subexp): Likewise. (check_arrival): Likewise. (update_cur_sifted_state): Likewise. (re_search_internal): Likewise. (prune_impossible_nodes): Likewise. (acquire_init_state_context): Likewise. (proceed_next_node): Likewise. (set_regs): Likewise. (free_fail_stack_return): Likewise. (check_arrival_expand_ecl): Mark DFA parameter as const. (check_arrival_expand_ecl_sub): Likewise. (check_subexp_limits): Likewise. (sub_epsilon_src_nodes): Likewise. (add_epsilon_src_nodes): Likewise. (merge_state_array): Likewise. (update_regs): Likewise. (build_trtable): Likewise. (sift_states_backward): Mark MCTX parameter as const. (build_sifted_states): Likewise. (update_cur_sifted_state): Likewise. (sift_states_mkref): Likewise. (check_arrival_expand_ecl): Mark eclosure as const. (check_dst_limits_calc_pos_1): Likewise. * lib/regex_internal.h (re_match_context_t): Make dfa a const pointer. 2005-09-06 Ulrich Drepper <drepper@redhat.com> * lib/regexec.c (merge_state_with_log): Define dfa as const pointer. (transit_state_sb): Likewise. (transit_state_mb): Likewise. (sift_states_iter_mb): Likewise. (check_arrival_add_next_nodes): Likewise. (check_node_accept_bytes): Change first parameter to pointer-to-const. [_LIBC] (re_search_2_stub): Use mempcpy. * lib/regex_internal.c (re_string_reconstruct): Avoid calling mbrtowc for very simple UTF-8 case. * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg a pointer-to-const. (re_acquire_state_context): Likewise. * lib/regex_internal.h: Adjust prototypes. * lib/regex.c: Prevent using C++ compilers. * lib/regex_internal.c (re_acquire_state): Minor code rearrangement. (re_acquire_state_context): Likewise.
Paul Eggert de205206 2005-09-27T22:25:55 (Depends-on): Add strcase.
Paul Eggert 91f0c713 2005-08-25T19:45:05 * modules/regex (Depends-on): Add malloc, since the code assumes that !malloc(0) means failure.
Paul Eggert 151e40bb 2005-07-07T08:08:39 * modules/regex (Files): Add lib/regex_internal.c, lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4. (Depends-on): Add extensions. (Makefile.am): Remove lib_SOURCES; now done by m4 code. * config/srclist.txt: Add regcomp.c, regex.c, regex.h, regex_internal.c, regexec.c. Add regex_internal.h too, but as a comment, since the libc version is currently broken in gnulib mode. * lib/regex.c, lib/regex.h: Sync from libc. * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h, lib/regexec.c: New files, synced from libc, except that regex_internal.h currently has a small porting fix. * m4/regex.m4: Adjust to new libc regex implementation. (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for all the .c and .h parts of (the new) regex. Quote the m4 stuff better. Check for RE_ICASE bug of old gnulib. Check for REG_STARTEND of recent libc. Rename local variables from jm_* to gl_*. Quote operand of "test -f". Say "recent enough" version of libc, not "version 2". (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a prerequisite module. Remove AC_HEADER_STDC; no longer needed. Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll. Remove check for btowc, isascii. Require AM_LANGINFO_CODESET.
Paul Eggert abe57472 2005-07-06T15:58:47 Support programs like Emacs that use gnulib but not gettext. * MODULES.html.sh (Internationalization functions): Add gettext-h. * modules/gettext-h: New file. * modules/gettext (Files): Remove lib/gettext.h. (Depends-on): Add gettext-h. (Makefile.am): Remove lib_SOURCES. * modules/argmatch, modules/c-stack, modules/closeout: * modules/copy-file, modules/csharpcomp, modules/csharpexec: * modules/execute, modules/file-type, modules/getaddrinfo: * modules/getopt, modules/human, modules/javacomp: * modules/javaexec, modules/mkdir-p, modules/obstack: * modules/openat, modules/pagealign_alloc, modules/pipe: * modules/quotearg, modules/regex, modules/rpmatch: * modules/unicodeio, modules/userspec, modules/version-etc: * modules/wait-process, modules/xalloc-die, modules/xmemcoll: * modules/xsetenv: Depend on gettext-h, not gettext.
Paul Eggert f7bdb977 2004-12-20T04:25:22 Undo previous change.
Paul Eggert 12c815ea 2004-10-24T23:22:14 (lib_SOURCES): Add regex.c.
Paul Eggert 917752ad 2004-10-04T20:17:39 Remove dependencies on unlocked-io.
Bruno Haible 5143f4e9 2004-09-22T15:11:04 Add a license tag to every module.
Paul Eggert ec3d798a 2003-08-07T19:33:14 Add 'restrict' module.
Bruno Haible 6f99528a 2003-01-20T10:02:37 Add a Maintainer.
Bruno Haible 2e82f91f 2003-01-13T16:07:17 Add module descriptions.
Bruno Haible 740e9a30 2002-12-31T13:46:30 Module description.